From 208ee1554ec74c0e439feac6c54ab142edee8123 Mon Sep 17 00:00:00 2001 From: <> Date: Thu, 8 Aug 2024 02:08:14 +0000 Subject: [PATCH 01/10] Deployed 6ff815e with MkDocs version: 1.6.0 --- .nojekyll | 0 404.html | 1 + KnownIssues/index.html | 10 + assets/Commit-GHD.png | Bin 0 -> 198236 bytes assets/Compile.png | Bin 0 -> 17610 bytes assets/Create-Branch.png | Bin 0 -> 12124 bytes assets/Discard-GHD.png | Bin 0 -> 6968 bytes assets/Fork-Button-Dark.png | Bin 0 -> 14063 bytes assets/Fork-Button-Light.png | Bin 0 -> 22924 bytes assets/Get-Installed-Dark.png | Bin 0 -> 36814 bytes assets/Get-Installed-Light.png | Bin 0 -> 27273 bytes assets/Install-Tab-Dark.png | Bin 0 -> 155606 bytes assets/Install-Tab-Light.png | Bin 0 -> 140659 bytes assets/MicroWinScreen.png | Bin 0 -> 104402 bytes assets/Microwin-Dark.png | Bin 0 -> 110604 bytes assets/Microwin-Light.png | Bin 0 -> 80496 bytes assets/Push-Commit.png | Bin 0 -> 79066 bytes assets/Screen.png | Bin 0 -> 269907 bytes assets/Settings-Export-Dark.png | Bin 0 -> 41519 bytes assets/Settings-Export-Light.png | Bin 0 -> 29047 bytes assets/Title-Screen.png | Bin 0 -> 347293 bytes assets/Tweaks-Tab-Dark.png | Bin 0 -> 153864 bytes assets/Tweaks-Tab-Light.png | Bin 0 -> 101648 bytes assets/favicon.png | Bin 0 -> 9793 bytes assets/images/favicon.png | Bin 0 -> 1870 bytes assets/javascripts/bundle.fe8b6f2b.min.js | 29 + assets/javascripts/bundle.fe8b6f2b.min.js.map | 7 + assets/javascripts/lunr/min/lunr.ar.min.js | 1 + assets/javascripts/lunr/min/lunr.da.min.js | 18 + assets/javascripts/lunr/min/lunr.de.min.js | 18 + assets/javascripts/lunr/min/lunr.du.min.js | 18 + assets/javascripts/lunr/min/lunr.el.min.js | 1 + assets/javascripts/lunr/min/lunr.es.min.js | 18 + assets/javascripts/lunr/min/lunr.fi.min.js | 18 + assets/javascripts/lunr/min/lunr.fr.min.js | 18 + assets/javascripts/lunr/min/lunr.he.min.js | 1 + assets/javascripts/lunr/min/lunr.hi.min.js | 1 + assets/javascripts/lunr/min/lunr.hu.min.js | 18 + assets/javascripts/lunr/min/lunr.hy.min.js | 1 + assets/javascripts/lunr/min/lunr.it.min.js | 18 + assets/javascripts/lunr/min/lunr.ja.min.js | 1 + assets/javascripts/lunr/min/lunr.jp.min.js | 1 + assets/javascripts/lunr/min/lunr.kn.min.js | 1 + assets/javascripts/lunr/min/lunr.ko.min.js | 1 + assets/javascripts/lunr/min/lunr.multi.min.js | 1 + assets/javascripts/lunr/min/lunr.nl.min.js | 18 + assets/javascripts/lunr/min/lunr.no.min.js | 18 + assets/javascripts/lunr/min/lunr.pt.min.js | 18 + assets/javascripts/lunr/min/lunr.ro.min.js | 18 + assets/javascripts/lunr/min/lunr.ru.min.js | 18 + assets/javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + assets/javascripts/lunr/min/lunr.sv.min.js | 18 + assets/javascripts/lunr/min/lunr.ta.min.js | 1 + assets/javascripts/lunr/min/lunr.te.min.js | 1 + assets/javascripts/lunr/min/lunr.th.min.js | 1 + assets/javascripts/lunr/min/lunr.tr.min.js | 18 + assets/javascripts/lunr/min/lunr.vi.min.js | 1 + assets/javascripts/lunr/min/lunr.zh.min.js | 1 + assets/javascripts/lunr/tinyseg.js | 206 + assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.b8dbb3d2.min.js | 42 + .../workers/search.b8dbb3d2.min.js.map | 7 + assets/stylesheets/main.3cba04c6.min.css | 1 + assets/stylesheets/main.3cba04c6.min.css.map | 1 + assets/stylesheets/palette.06af60db.min.css | 1 + .../stylesheets/palette.06af60db.min.css.map | 1 + contribute/index.html | 13 + .../Features/DisableLegacyRecovery/index.html | 24 + .../DisableSearchSuggestions/index.html | 24 + .../Features/EnableLegacyRecovery/index.html | 24 + .../EnableSearchSuggestions/index.html | 24 + dev/features/Features/Install/index.html | 46 + dev/features/Features/RegBackup/index.html | 24 + dev/features/Features/Sandbox/index.html | 9 + dev/features/Features/dotnet/index.html | 14 + dev/features/Features/hyperv/index.html | 23 + dev/features/Features/legacymedia/index.html | 16 + dev/features/Features/nfs/index.html | 26 + dev/features/Features/wsl/index.html | 14 + dev/features/Fixes/Autologin/index.html | 22 + dev/features/Fixes/DISM/index.html | 40 + dev/features/Fixes/Network/index.html | 39 + .../Fixes/RunAdobeCCCleanerTool/index.html | 42 + dev/features/Fixes/Update/index.html | 302 + dev/features/Fixes/Winget/index.html | 24 + .../Legacy-Windows-Panels/control/index.html | 31 + .../Legacy-Windows-Panels/network/index.html | 31 + .../Legacy-Windows-Panels/power/index.html | 31 + .../Legacy-Windows-Panels/region/index.html | 31 + .../Legacy-Windows-Panels/sound/index.html | 31 + .../Legacy-Windows-Panels/system/index.html | 31 + .../Legacy-Windows-Panels/user/index.html | 31 + .../BingSearch/index.html | 40 + .../Customize-Preferences/DarkMode/index.html | 42 + .../DetailedBSoD/index.html | 40 + .../HiddenFiles/index.html | 40 + .../MouseAcceleration/index.html | 48 + .../Customize-Preferences/NumLock/index.html | 41 + .../Customize-Preferences/ShowExt/index.html | 37 + .../SnapFlyout/index.html | 40 + .../SnapSuggestion/index.html | 40 + .../SnapWindow/index.html | 37 + .../StickyKeys/index.html | 37 + .../Customize-Preferences/TaskView/index.html | 40 + .../TaskbarAlignment/index.html | 40 + .../TaskbarSearch/index.html | 40 + .../TaskbarWidgets/index.html | 40 + .../VerboseLogon/index.html | 37 + dev/tweaks/Essential-Tweaks/AH/index.html | 32 + .../ConsumerFeatures/index.html | 18 + dev/tweaks/Essential-Tweaks/DVR/index.html | 46 + .../DeleteTempFiles/index.html | 15 + .../Essential-Tweaks/DiskCleanup/index.html | 17 + .../Essential-Tweaks/EdgeDebloat/index.html | 158 + .../EndTaskOnTaskbar/index.html | 57 + dev/tweaks/Essential-Tweaks/Hiber/index.html | 33 + dev/tweaks/Essential-Tweaks/Home/index.html | 21 + .../LaptopHibernation/index.html | 65 + dev/tweaks/Essential-Tweaks/Loc/index.html | 39 + .../Essential-Tweaks/Powershell7/index.html | 355 + .../Powershell7Tele/index.html | 17 + .../Essential-Tweaks/RestorePoint/index.html | 102 + .../Essential-Tweaks/Services/index.html | 1421 ++++ .../Essential-Tweaks/Storage/index.html | 17 + dev/tweaks/Essential-Tweaks/Tele/index.html | 404 + dev/tweaks/Essential-Tweaks/Teredo/index.html | 26 + dev/tweaks/Essential-Tweaks/Wifi/index.html | 25 + .../Performance-Plans/AddUltPerf/index.html | 63 + .../RemoveUltPerf/index.html | 63 + dev/tweaks/Shortcuts/Shortcut/index.html | 79 + .../BlockAdobeNet/index.html | 201 + .../DeBloat/index.html | 152 + .../DebloatAdobe/index.html | 231 + .../DisableBGapps/index.html | 18 + .../DisableFSO/index.html | 18 + .../DisableLMS1/index.html | 100 + .../DisableNotifications/index.html | 25 + .../Disableipsix/index.html | 26 + .../Display/index.html | 110 + .../OOSUbutton/index.html | 28 + .../RemoveCopilot/index.html | 48 + .../RemoveEdge/index.html | 175 + .../RemoveHomeGallery/index.html | 29 + .../RemoveOnedrive/index.html | 175 + .../RightClickMenu/index.html | 35 + .../UTC/index.html | 18 + .../Undoall/index.html | 57 + .../button/index.html | 66 + .../changedns/index.html | 10 + devdocs/index.html | 1 + faq/index.html | 1 + index.html | 2 + search/search_index.json | 1 + sitemap.xml | 3 + sitemap.xml.gz | Bin 0 -> 127 bytes stylesheets/extra.css | 13 + userguide/index.html | 2 + 158 files changed, 13525 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 KnownIssues/index.html create mode 100644 assets/Commit-GHD.png create mode 100644 assets/Compile.png create mode 100644 assets/Create-Branch.png create mode 100644 assets/Discard-GHD.png create mode 100644 assets/Fork-Button-Dark.png create mode 100644 assets/Fork-Button-Light.png create mode 100644 assets/Get-Installed-Dark.png create mode 100644 assets/Get-Installed-Light.png create mode 100644 assets/Install-Tab-Dark.png create mode 100644 assets/Install-Tab-Light.png create mode 100644 assets/MicroWinScreen.png create mode 100644 assets/Microwin-Dark.png create mode 100644 assets/Microwin-Light.png create mode 100644 assets/Push-Commit.png create mode 100644 assets/Screen.png create mode 100644 assets/Settings-Export-Dark.png create mode 100644 assets/Settings-Export-Light.png create mode 100644 assets/Title-Screen.png create mode 100644 assets/Tweaks-Tab-Dark.png create mode 100644 assets/Tweaks-Tab-Light.png create mode 100644 assets/favicon.png create mode 100644 assets/images/favicon.png create mode 100644 assets/javascripts/bundle.fe8b6f2b.min.js create mode 100644 assets/javascripts/bundle.fe8b6f2b.min.js.map create mode 100644 assets/javascripts/lunr/min/lunr.ar.min.js create mode 100644 assets/javascripts/lunr/min/lunr.da.min.js create mode 100644 assets/javascripts/lunr/min/lunr.de.min.js create mode 100644 assets/javascripts/lunr/min/lunr.du.min.js create mode 100644 assets/javascripts/lunr/min/lunr.el.min.js create mode 100644 assets/javascripts/lunr/min/lunr.es.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.he.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hu.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hy.min.js create mode 100644 assets/javascripts/lunr/min/lunr.it.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ja.min.js create mode 100644 assets/javascripts/lunr/min/lunr.jp.min.js create mode 100644 assets/javascripts/lunr/min/lunr.kn.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ko.min.js create mode 100644 assets/javascripts/lunr/min/lunr.multi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.nl.min.js create mode 100644 assets/javascripts/lunr/min/lunr.no.min.js create mode 100644 assets/javascripts/lunr/min/lunr.pt.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ro.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ru.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sa.min.js create mode 100644 assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sv.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ta.min.js create mode 100644 assets/javascripts/lunr/min/lunr.te.min.js create mode 100644 assets/javascripts/lunr/min/lunr.th.min.js create mode 100644 assets/javascripts/lunr/min/lunr.tr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.vi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.zh.min.js create mode 100644 assets/javascripts/lunr/tinyseg.js create mode 100644 assets/javascripts/lunr/wordcut.js create mode 100644 assets/javascripts/workers/search.b8dbb3d2.min.js create mode 100644 assets/javascripts/workers/search.b8dbb3d2.min.js.map create mode 100644 assets/stylesheets/main.3cba04c6.min.css create mode 100644 assets/stylesheets/main.3cba04c6.min.css.map create mode 100644 assets/stylesheets/palette.06af60db.min.css create mode 100644 assets/stylesheets/palette.06af60db.min.css.map create mode 100644 contribute/index.html create mode 100644 dev/features/Features/DisableLegacyRecovery/index.html create mode 100644 dev/features/Features/DisableSearchSuggestions/index.html create mode 100644 dev/features/Features/EnableLegacyRecovery/index.html create mode 100644 dev/features/Features/EnableSearchSuggestions/index.html create mode 100644 dev/features/Features/Install/index.html create mode 100644 dev/features/Features/RegBackup/index.html create mode 100644 dev/features/Features/Sandbox/index.html create mode 100644 dev/features/Features/dotnet/index.html create mode 100644 dev/features/Features/hyperv/index.html create mode 100644 dev/features/Features/legacymedia/index.html create mode 100644 dev/features/Features/nfs/index.html create mode 100644 dev/features/Features/wsl/index.html create mode 100644 dev/features/Fixes/Autologin/index.html create mode 100644 dev/features/Fixes/DISM/index.html create mode 100644 dev/features/Fixes/Network/index.html create mode 100644 dev/features/Fixes/RunAdobeCCCleanerTool/index.html create mode 100644 dev/features/Fixes/Update/index.html create mode 100644 dev/features/Fixes/Winget/index.html create mode 100644 dev/features/Legacy-Windows-Panels/control/index.html create mode 100644 dev/features/Legacy-Windows-Panels/network/index.html create mode 100644 dev/features/Legacy-Windows-Panels/power/index.html create mode 100644 dev/features/Legacy-Windows-Panels/region/index.html create mode 100644 dev/features/Legacy-Windows-Panels/sound/index.html create mode 100644 dev/features/Legacy-Windows-Panels/system/index.html create mode 100644 dev/features/Legacy-Windows-Panels/user/index.html create mode 100644 dev/tweaks/Customize-Preferences/BingSearch/index.html create mode 100644 dev/tweaks/Customize-Preferences/DarkMode/index.html create mode 100644 dev/tweaks/Customize-Preferences/DetailedBSoD/index.html create mode 100644 dev/tweaks/Customize-Preferences/HiddenFiles/index.html create mode 100644 dev/tweaks/Customize-Preferences/MouseAcceleration/index.html create mode 100644 dev/tweaks/Customize-Preferences/NumLock/index.html create mode 100644 dev/tweaks/Customize-Preferences/ShowExt/index.html create mode 100644 dev/tweaks/Customize-Preferences/SnapFlyout/index.html create mode 100644 dev/tweaks/Customize-Preferences/SnapSuggestion/index.html create mode 100644 dev/tweaks/Customize-Preferences/SnapWindow/index.html create mode 100644 dev/tweaks/Customize-Preferences/StickyKeys/index.html create mode 100644 dev/tweaks/Customize-Preferences/TaskView/index.html create mode 100644 dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html create mode 100644 dev/tweaks/Customize-Preferences/TaskbarSearch/index.html create mode 100644 dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html create mode 100644 dev/tweaks/Customize-Preferences/VerboseLogon/index.html create mode 100644 dev/tweaks/Essential-Tweaks/AH/index.html create mode 100644 dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html create mode 100644 dev/tweaks/Essential-Tweaks/DVR/index.html create mode 100644 dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html create mode 100644 dev/tweaks/Essential-Tweaks/DiskCleanup/index.html create mode 100644 dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html create mode 100644 dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html create mode 100644 dev/tweaks/Essential-Tweaks/Hiber/index.html create mode 100644 dev/tweaks/Essential-Tweaks/Home/index.html create mode 100644 dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html create mode 100644 dev/tweaks/Essential-Tweaks/Loc/index.html create mode 100644 dev/tweaks/Essential-Tweaks/Powershell7/index.html create mode 100644 dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html create mode 100644 dev/tweaks/Essential-Tweaks/RestorePoint/index.html create mode 100644 dev/tweaks/Essential-Tweaks/Services/index.html create mode 100644 dev/tweaks/Essential-Tweaks/Storage/index.html create mode 100644 dev/tweaks/Essential-Tweaks/Tele/index.html create mode 100644 dev/tweaks/Essential-Tweaks/Teredo/index.html create mode 100644 dev/tweaks/Essential-Tweaks/Wifi/index.html create mode 100644 dev/tweaks/Performance-Plans/AddUltPerf/index.html create mode 100644 dev/tweaks/Performance-Plans/RemoveUltPerf/index.html create mode 100644 dev/tweaks/Shortcuts/Shortcut/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html create mode 100644 dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html create mode 100644 devdocs/index.html create mode 100644 faq/index.html create mode 100644 index.html create mode 100644 search/search_index.json create mode 100644 sitemap.xml create mode 100644 sitemap.xml.gz create mode 100644 stylesheets/extra.css create mode 100644 userguide/index.html diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 000000000..e69de29bb diff --git a/404.html b/404.html new file mode 100644 index 000000000..1ccd3c7de --- /dev/null +++ b/404.html @@ -0,0 +1 @@ + WinUtil Documentation

404 - Not found

\ No newline at end of file diff --git a/KnownIssues/index.html b/KnownIssues/index.html new file mode 100644 index 000000000..5dcc9f5d5 --- /dev/null +++ b/KnownIssues/index.html @@ -0,0 +1,10 @@ + Known Issues - WinUtil Documentation
Skip to content

Known Issues

Launch Issues:

  • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
  • If possible: Allow script in Anti-Virus software settings.

  • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')
+

If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

Provider Primary DNS Secondary DNS
Cloudflare 1.1.1.1 1.0.0.1
Google 8.8.8.8 8.8.4.4
  • Script doesn't run/PowerShell crashes:
  • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
  • Run:
    Set-ExecutionPolicy Unrestricted -Scope Process -Force
    +
  • Run:
    irm christitus.com/win | iex
    +

Other Issues:

  • Windows taking longer to shut down:
  • #69 Turn on fast startup: Press Windows key + R, then type:
    control /name Microsoft.PowerOptions /page pageGlobalSettings
    +
  • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
    powercfg /H off
    +
  • #69 95 #232 Windows Search does not work: Enable Background Apps
  • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

    Get-Service -Name "XboxGipSvc" | Set-Service -StartupType Automatic
    +

  • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

  • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

  • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

Battery drains too fast.

  • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

  • Check Battery Health:

  • Open a Command Prompt as an administrator.
  • Run the following command to generate a battery report:
    powercfg /batteryreport /output "C:\battery_report.html"
    +
  • Open the generated HTML report to review information about battery health and usage.

  • Review Power Settings:

  • Go to "Settings" > "System" > "Power & sleep."
  • Adjust power plan settings based on your preferences and usage patterns.
  • Click on "Additional power settings" to access advanced power settings.

  • Identify Power-Hungry Apps:

  • Right-click on the taskbar and select "Task Manager."
  • Navigate to the "Processes" tab to identify applications with high CPU or memory usage.
  • Consider closing unnecessary background applications.

  • Update Drivers:

  • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
  • Ensure graphics, chipset, and other essential drivers are up to date.

  • Check for Windows Updates:

  • Go to "Settings" > "Update & Security" > "Windows Update."
  • Check for and install any available updates for your operating system.

  • Reduce Screen Brightness:

  • Adjust screen brightness based on your preferences and lighting conditions.
  • Go to "Settings" > "System" > "Display" to adjust brightness.

  • Battery Saver Mode:

  • Go to "Settings" > "System" > "Battery."
  • Turn on "Battery saver" to limit background activity and conserve power.

  • Check Power Usage in Settings:

  • Go to "Settings" > "System" > "Battery" > "Battery usage by app."
  • Review the list of apps and their power usage.

  • Check Background Apps:

  • Go to "Settings" > "Privacy" > "Background apps."
  • Disable unnecessary apps running in the background.

  • Use Powercfg for Analysis:

    • Open a Command Prompt as an administrator.
    • Run the following command to analyze energy usage and generate a report:
      powercfg /energy /output "C:\energy_report.html"
      +
    • Open the generated HTML report to identify energy consumption patterns.
  • Review Event Viewer:

    • Open Event Viewer by searching for it in the Start menu.
    • Navigate to "Windows Logs" > "System."
    • Look for events with the source "Power-Troubleshooter" to identify power-related events.
  • Check Wake-up Sources:

    • Open a Command Prompt as an administrator.
    • Use the command powercfg /requests to identify processes preventing sleep.
    • Check Task Scheduler for tasks waking up the computer.
    • Use the command powercfg /waketimers to view active wake timers.
  • Resource Monitor:

    • Open Resource Monitor from the Start menu.
    • Navigate to the "CPU" tab and identify processes with high CPU usage.
  • Windows Settings - Activity History:

    • In "Settings," go to "Privacy" > "Activity history."
    • Turn off "Let Windows collect my activities from this PC."
  • Network Adapters:

    • Open Device Manager by searching for it in the Start menu.
    • Locate your network adapter, right-click, and go to "Properties."
    • Under the "Power Management" tab, uncheck the option that allows the device to wake the computer.
  • Review Installed Applications:

    • Manually review installed applications by searching for "Add or remove programs" in the Start menu.
    • Check settings/preferences of individual applications for power-related options.
    • Uninstall unnecessary or problematic software.
  • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

Troubleshoot errors during Microwin usage

Error 0x80041031

  • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

  • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

  • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

    sfc /scannow
    +

  • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

  • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

  • Press Win + R to open the Run dialog.
  • Type services.msc and press Enter.
  • Locate "Windows Management Instrumentation" in the list.
  • Make sure to set its status to "Running" and the startup type to "Automatic."

  • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

  • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

  • Press Win + X and select "Event Viewer."

  • Navigate to "Windows Logs" -> "Application" or "System."
  • Look for entries with the source related to WMI or the application use to mount the ISO.

  • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

  • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

\ No newline at end of file diff --git a/assets/Commit-GHD.png b/assets/Commit-GHD.png new file mode 100644 index 0000000000000000000000000000000000000000..ea11d851df6f6ffd8b95f65a5c7d60e4de85615d GIT binary patch literal 198236 zcma&N1yEc~*DX8{e6S!P*Z@I;O>lP&5?m5s2<{Lh$l&g70fGkzZoxgc2X}X8g8M&t z_VbI~gnt5)1$Ufb~{ZQWXF|HUR(-f1os(UV$UfSDOXn^!a2084(^QZWXY|S$nCtNH0fjplwUO}Qg@?Q&Ertsb73|x;uTx5QyTDlQTnp1 zQ4zF&CZMut+KdzVu%0~n{isY;xI5Qkevqo1ep}Ba!zFVav(K@6tLekysatNdrt2m# zr1jTq0~4zKNt)wl)kDutj{ZfYFo8TbvyKrV5%3M@^n23I9nVeUzHYqph~AZ{;Wg~$ z(r@M@dfAe%xW1>CEpjm_Kx>0xrE<%A$c;-vpjU1Z`*woCIaL*gp&VE@5P&bz(l;LyKWyX{15|5uV zuYPZlhBf0gsSN<2v0H0eWd#EOq76PjS5C>EsKR=I=kN>g!{`%Q`5Vs{ zOlc0n7btJS0xsG3bD-LqsS706_a}7x~XaxZh40+51kn~bMVBS zD`go7PMx5NS*R!gQP}@|>tsl`DkDu5UZ%KQpn8FdzZn7`!A%ql0Av{hTK+T!@FM{| z3V`sQgJVM&nud+pk)VR`l_QWv1OOrvsbt0~Lfd`O7d$@zn3Wc|>33Y;{>$ z)lkW>1JX$8@Tr_B^9Md6fX_JKPZtv~|2z#JaK*+ipgLp2yR@^uI;w!6z`(#D_avRt z7m=Fr>4_SG)JT9V1_XFFeBuz!{}=@Tn)CM<4445`7}wW_zJLn&I4w>q~2(ebb}a@p&XWkJsTH2;7-OucNwr z?ssyYc~Nuzoh)uQ7yF;iIZc*8hI_}Xcx;n~-V|w;Ie|A?JItM!dZpcUtrdKOVCF5N zl(?Ej>cn>DHK})393k56pjQht>Iil#ZQd*99{0_m*;LszR`elKhE-`^CmH?5VUeK? z_GkH$uR_DZP{B>3-bKNN-WeO zr8_UXoe6SO(WP?m>6Ko*1wSe?QBgG-N>$mgrjb#yPFM#(&2{ZtLA-VPiCd3939snZ{esYMKp`I z)Mieq96B3IsaW;Rm8D|cF;MA&hvX>wEFvUu7E!{>f7W2iH`5EtoA(>S*o1tDzLdh; zJ&NpLUi32qFY-(&m-ficB@W`6_(G7MD_8!}sp<)3- z%~33Cpc5~=6O`q|+3uwh^5O{%%swa8Punz4CDCJsR=F)T8q_*MiF$j%=7_k+JHG5dg>FN-Y<;Yy4;<3aiw0E^XxJzw{Ll3-JZ;~bt4Q=!% zH1&dLcCM2z(XeM@m#k*$R|p%CiEgx7V}^R0KFIZ^R!!{=*p#p^j>q;l|M2wlzaIA( zrVIs?0Tg`S0>-v#D>zQsd8qk$Yi2 z2XmHrD#T3zcU6UC9t=Tcvs3es5Xl8(_i@*~uWWVi*7EilJn7||wB5UN@6}|G=*=b1 zp0|aT8jxC@r8O@s1T<+2g)F8{+yg(zEwpRe1=%}TSyk_B8ugEL`r&IPnANPNcr0)l zgf!?=bf0k>chVlRP}Xtzmc>dGj-HP0xahzze^hYKYv5EzXQP z=Gls&n%D{CsumuGb>8F4ARiA{2|q%}H?W7F`?W?)Eh`PkIMFEfs(&f>Y;7Qetkn!Nf}JtuwAm$1e`;Y~`CrnrOve z2}Z)44o%lqHci()&;Cr3ou6Y_e2N)3Bf0vG{RV# z+k^V_>84J_FDCVcxfRllNr>=1v=rA!=;`L<9-O!Y$hSiAC z8n7ZoYU2D}%SymwjkAjWO!ZW;tJ72oy(XBmVydIy<3?LvsYSgI!Aha0pMc;ylQTYr{j+{fkaf0p-pA4Gn_x32cW#nKnq3q9fJu{ zVitYeMUIVC!3e~&TWoQsZ@Z$b5Jn3eGF0|DM=V1Qe_4(D#7rl##G~8NuGr1+K`s=c z{9{JD=N!?xrP&txIv&a^{)l0ykbc0|+nV5^->GSnaKpz9T4U-QN>&&xI6F1~*0z>L z0bnAr9v3yn&n*Uq+W={~q)tp6--jNNy$F%(n!)Bfx zn9I?d`Z=$zXi;`be&!wNa)32==V}z-cB*x&RFZJRctU53ka^eafmkbbmUbGuz0>;3 zJK$()@V+?q5@XgmoguAC?guu7rHxHgfzTqz+1DFAtz5O~+;gu$Bt$C)e`n7OtKu92 zUgVz?qzv^gEi0`J8h2I}=9uO*{A#gD`$%ZbYADcFV93xa>M+oG_>C(^QR#i7b}SYS zrj94vFeoODES5YFUipAP)qNo@>F?Fu zc7HmDJ%0jr%D84*GGMj3aP1YzHC1I7ZIDCQh56?>J<1G%LfIi3OEmZb;=(W=c}3ow zxeV#0@EV!k3AQ@7e)?;(wwNK2g5^5(=6$z`ECmQ%pzDdO+5PK9SOzT8C89iqVS;e^ zb93#<89QpfzM&%2LkVWt8;;}>M&DLe`r=XfTotpE$+03&DL?|#;oZfX8&{iu2j7@so$- zyCr_2h=A^``vo23%&eLe=k;6hp8^hacb0w@Bd(Ne<*d;43me~g4xf+91i4uE1?_NW zM0M9;KAB$Y)Q9gPi-c)m^59IW@?(wD{+hzUh!W0qT~^dG{DX-A00z4RPz%7G=2`QD zt098JF7leaL3Zo8pIjniygD+E9b~i|TW8p^X0he&8g!R&iDyL+81P;DAmnp4xY@2j zOUlP4Q-L8=h7!fh!=qW3jw!C}y;{5gO4%nLrkK{M>gtn4Mbm@TH8?DbTTY{+6L!6> zc%y=6`-prPGy4V$FV`0}sO|JEjiIi2^<0@=+q(p8=a|EQ`XzFQjY-ST#>Pm|>y=nl zQ|1DmSGMe}NDk%pq1rS*^JN_zFdE8!x+7IUefy2K-*G*nz0Fg#j-jWguSNj6*4pbE zzcH=mlgu-e*>zU?#MK-=BW*5=CahI3L!=sXT1r&^`RH%Omaw0vc{IxueQA2oAU)i)_cjgNgzEfgW5orh)86zP=(_b# ze|)xA0TpQF6g0JtF#=kKU)I6>vV;bGO`X{iOR1uZ<;?oAbiY0|ih+%eB52(p{-yp1 z@i55R{6ZPC`;sQ(t4ZStR42o@8hvPDl*9m3rBmuSg0nDs0Rujn~>*DmsGh_~J)>ln2#`#ZNm-ZjRPTk(DeYy5RQkAh{Mcl+fpYve0% z2=yKjJt8lxYbusx7cqo+6w*FIVYG8;-XYv>HeDPb--u1_lVi%8m(AQrvK5k7iu&@S zJw+q+xD81I^l{~_iOfBEGV@F&W2{@$5E&DSa=jSj(^6L$<{lAePUYNu|NJHAlVC>O zZEYhem(CR$HfCaUr#ydB)Lj09qKVd8qV#zzb?Om%?Y>TcKu;fi>|lvPZ>HKw^{WM) zDhnp5Cu+U(>hllTX-|=^W7d0hrp9F-arEZ8d9duxQsp8sr3=S_ zG4kx~A{1~Zi98PUxF-5oq){x!?JwKQywGo|dDjsUcaj;DXRF&G zFxO9KL=~Ds$B3gMOdb_nZ(WSv?2~bUp1HRiqUcbJ`baYOM6MqFG^_tKm@h`j)9olk zIU?gvUL-R2%41W&^lP87AW@$Hp5Kb))h$^$PZTZ+x`BdUt2&;ZuKnm>3-C%}!Jn7E0W&v-IU=%wBu-QD`%AWCGu2oWQJgqYK#R@KWr7!ea7-P+hGm!S z;WtGIeV=iyc(tLvr!Won8T_zRg`LD5sgYh0d*W>V#jX9-!yo&GpA;TO@)z z!iSqUYdphqKceBz)Z)f?UhJXK#=y}J8K#N?LxvApaEHJDeLilf6rd5AVG_B)XbO>IuBR1`s>Tiy1p$kO3 z=+h)8lDpI9?9yd~;Uu=Iw^mYVuw&wjWu4}xQAWr|C93@L1qZ{o!+b9BE(I;r?HxkP zo9+)pqiLwza3dtmwQxr>7c8m4moofPRq98E z2}kN-i3&Zcy1}C3h5K*1Zg zW0!sNMcf&=uX5V;Aip)&M64v!`ktvCQ&B)WNb@Vl(LftD=O9^>8$SY5uKW}Qr)%d08!&yc^WiX2YZ8D=u&!SFfBSF zzxKXh=PsLn?M^KXerXEQX8XZv1sh>gpfDo|wfXFf_?FsQt~q$_?O=EDO42(s(xJZA z2ylv|D(>;-*Ja8@X}K^-aC-w@ zwr8-p>NTz#uTspMNqHK?OO4+qMc(jZp|}=*@#B?RKM&1S0O^zYbl|K8i@H(;tt*kz zVDvg69Hp%<<))Iu;kyvQXam=E?0LA`I>oHGV4drYy`Ir2?+W`nN+YioUW+2w1+?h$ zwIJ9V|6$bS3+_0(|9~;De4C8#HLrw&!XH>BK|iThvyss)(M&YtFOwDok2)C-F;x4c z$#7eIJjUm4UFSTgZ+!cNu5)TJT$&lYmmCG*!<(92r5-Yfq|QT2JNt?CKkWAGSL7GP zQydT3nFN$8*;AGsbnyk@zM_;}&IB;A(^&j5iu*~R@>t-ld(E%e%Ww^_XoN+<%$~6W zpVjATsIOT95*xI-swz-CTeG+n7i3%W;S6YdMWG2kg;rW~9shvCm{V32vJ!44(r9Jn z764J4GSDL>5VQW2EKMsV$ecDq>EwM2CC8cY;~qB)Z9b7}8EUzBgh;3BH^{G%dCN5C zi}IYBQSFS9=i`WJfws^NxM}lB0?h`A47RyOdG|*Q&0;@E)Tg|pp#dQ*Y$op3v;BU1 z5U4W?***~Q?hp(~bBq$DzT*g6gUBq*j8|tinDJPl=IObmWCqwI+C-#p6hM@zzq!#} z#HhbC0I};o%~?FUjiMH~ZXR-Yux3Cz+ERySukGEfGcp|4>^f{Ovzd|;zE;Dd`Q}yw z-*3L391mAY9%@kZ@>+|Y!40fflCbVdFdSF)q)Mx!DSnhUeVN~Ek%|jS71ezscyxOH z^{iO(paBDs`)3`xOUo;FRKi%un`KVRC<7?dmfE5^q9YbXBv)hvW~qO2uo?AZGleg& z3@*M7J@^~I%Ct!pCQn_y0Fi`Pr|VZPSr+?E{Gg#ZC1^pUmb0`wHGF_wFsdUro- z48u52+sVg8EjGjGRe(E2EBQ*OcPi_{*IoATZl(fRkxR1ZnJa3tNo)D7JjW&0`oGE5 z1Rl9)$ZFE+uLDy2dtX(J5R-F1kB!r}tP;6nAK#E9V9;{Y!Sbbxse)foQ-@w5bhr%t zq=w0WL&Cz0_2wv=s8@ulKug^u(LOJA$o0cJK7RB>s)wQVZS9ZxDVpDxGI4Nl(91*y z4{xXhI!(%eZm>IlimR!rZmb((L7!-Q^17Pde=-%>+s%2?Dx8c=q!Ap`g4MjighSj7+YxABuS9cLO6 zsirE(P1)i!3O~4AN3W&fp_FNnEsvXv>`!Ftx=j0&WUf6+`pG8kD?6o@tm2wZl%s*{ z-<1oxN}3d*1(4OgH9H%%bR(7c-c?;Y4^~u8oszyFEQe8v@)Ss_iECSB(HTn=$Ia`D z3<8LyowN}8ixwYV+mGS)1)sn=Hj%b(pXun;$*eFVPXVt(qK{@1bDp+#u8xDo%M?cV zI&Y7fDnDEq;p<3nhdg78rA(d*7LNCjhvck9Lwvr(1P}i_+8_??z<-tdiI#=+@c`Mi zLw|#>P3PkVss0Sz+GS`2?4*!La-KhCC@~* z8S}$N#}rVu0Hp=tsym1#hN*kH=1aeGU#{z6jU(z?3>b>edQwufP#2x@=IvAU4fgw% zc1H&gscitVK#FcO`r_w2IoS0$^9vwI3ED_~+o=XVZEnPy01D1LV=7;bmUeQI5_HX0 z?o%B8LLq#P7>7)LB5blZKRNv=(j4CnpHvHMZea5}+L?SN^TuQ%1dPS8cp%A*S~;_ zvz_IeWXn{G9J<27Z7vLr_L9})X_ocEI^rHDnJSoO`eHJy6#6Fy9rmLymbqI0PzBQi z1z=ctBY6>=89h=hbKwb{H9M+|n*mmM3j7pgp!=2`&6i?K@>ID-F332oC}E(bt46U* zc^@v=(GxHy0aGu3QF=y_>)Vj#2#qx7a8Yl)Kx}T3xRVhipAehd@jVE-H4S&x5YkEK zr?L?wCzDPK@;15-a36$lMcz!Fis_h?1MlVg>{KL>>I$9fTNYKP~z}Y#ttD2`dpkZ+MwCEj@qwiq3?>x!9*{?X>mX0-4}Q(n`(^6 z$j>s);{(^X`qCinFV+pbnIO$7*U7l(O&=DnemIdPk5aFjG};NghX?m9xw%dsL%k+Bn8$l@&{k$1EvsD9vy?5mi%dP_4|{;>+>V(@FYz+-uH9q^8diBR z-fU;BGAs-Aixd=`>%Yv8=8EikD8nla&t@9o7=p8VBg2!sJuCAom9U#6YkuzS>hE8H z_k+=sK#~QL!zt^oM555-C&mx%naQEaU2o2O=HlF31etXd+^vdB=ciDSf>Q#agwYt~ zoq0JLd(D`kdJY<%ylDf(OzwANPviL0?|>JMpW1{7CHfn@_K|CBxNyvCNnUqe4aLA2 z_Uj_lw7YwT$CPV=)f%?RMT*g>CrQ$Hx7X<;f}o$=nhsc$wcm$^eYF+A zcNh8n98Puh?_nQ60)iX_%)p2m#;$~ZfE?l$xj1v1vUd5V*)zi%_IVD~s%DTI{b_w0 zylUD;eM0c%ReGiNJx8rsJ}G^h;Xn;5E3Dj5CvX@rY7*+TOzCKw?*pfJIB4`M#*l1E zS-i(sA}R#DUK=c2!1+~ot~7XDPT7<09`Qeu<^@0GsG;>9f(>Et zTu36EFfJL2M*eYoS|+FB|XmxK4a08hU0m zhbJj3dw-PYyjK_WUSjCon51GMeP6!y^W!1AcZ?ITYRr?GDz3wfh5EGfiLF^OQ%z$Ez@F#(sm>b%Q%E^V>dxx~6+6@PGf77o4*D z(u2i)RcIsMu69(bj4lb@%|Cof_j2}3qjoe#Nxb>GZo&;Kn7K!WZ}hJPnToZHXw^^T}u!#T$D0Fj)uk!L99@j zB%MSupoTkJ`UY2R~&FTBZ-PxD?{K4ZDU^-^pSrj;Pl(W}o46!6R$q>1) zcd>WkY}Hm;xd?MIrgbN4Me<0HJ~xUeNWeAJf-|s=3>PfRdZPtfQivJ-=8dmfJq5c2 zUh^JsrMx0)R%V*8U%RZ3Z>CwV>G0F}F4-$J_T0tob%uPgsD#6!7=Kjsbpeu@B1l4Y zmJpsKk~VJcY1_LoRTk->Kxohl(m6FVgvp-va`-2AcwR{Rw#Vbk^sW;|xig#BK4<+m zV=l2Ay;=?ru|+G?X#S*L+Nu90g8_cz@afC)K={9u0EaOi!5B3tRXA{Q0pL#xT@K~% zNv535R$qe+-93lr`h6S_{`i9bla-e!Wb6tqbhz-th#m7K$AyzutNs3Wd%mE*a`5nM zPb=jOkf6>^7yVrJ4-x&(!NBqc>MIwUxaHBUC956Sj*SKg!||t+FTw<#GXUE4>zTOe z57<^BQ313;-Nv|KdA^{(^a=nelwD*|KE!iG%6hoy0FCvJ{s2yxu?L+!puxwzh42gL zv-#f|6H)O9aa4gQCG(yM)i? zUmf@#t-()6{r5{cHU%(M{2+h?RCss)-2GP<|MZT*sQr$>*8%QeML)qm2d?fvDhU%z zIpUEnYWS~&XaD`opVQR;eOkHbRGSV&6@LilRT2#T`+Ceh@^8FpAfxcbWjITM@!jP# zaj_Di%^7)cD@lWUN29ycf+d6mCvEJqV?b)bZry4x6{ex0kEqOyBnf7?nOb(8T~Kjv zolns;_9Srg_sLAChy1eG4QOo0j46=^K3&-%=$KEMIW4$87=8UBzr^Z!@H@`=xG@Xn z%vmNCtrJ~1gjkYAepfKjKQt8(ix8DucE9U(${#85G zYOP}G_hi3t9a%IIPT}B#|97kC{l)4cA=rMOX?B#OV-(*#8ZWKOQ)&(8Lm^w_2&>RS z-^K11V$#+a7k3Rqey2&k&OM%^Bxz@Fp@}F7!`7@VJhYU_tP*t7v9wQh z&93l067tW6A9$%CDE?jWzyQ6Q+Lb4<<%6)v!IV~O>k#j3|IFT~R; z%__~!bA3Q~`*X&Zh55PsS&soaP2A&Rz02Ro2RV9cC{a6g6t#W2w^MV{Zqkt0G2rQ` z!vpXX&=UYM?%8{D#z@w=WPfWS(@hLeu1ctY;Py>{M$8Q&<|tq*5mO-(%w{wScW5(( zDP1Mbi|$J_RknHuD^pqSZK7|LNzVNSN;CInDc{j{)n?sZ7Lw~|EYVHdWA|@>`q1>mU4W|ba4hs;8iPonHuAkzwC&xF zUl1DZez2xSJ>^Xs{`Uqod*x~Gs=8bY8G)3f5VY{ziZjQJgEcDFyE9HlP17)8PCAA5 z>LNSxrSqBh%D{{EEcD`;zS=kWa*I*}Rel;gb9IZ`8wTCT*M1*vZGMO;i+eLN;{IA2a8of%o9@|zq~%$&5xw#a1= zLX?rjtI3d6G7$F@1t)eTKz@W;9Xfvb|9XFo89MpF-U84xDKMJ>ds9rC(ifVb`*~^V1-+QFKio#oe z?guPlJKEqh^V065Vf@sG)EDmUd&b;byL(xtUkkao``~N%m&g2L&z0qR?+6m3hx9A% zGSjc=YZGp-4#FezE=ajw^_1MYZ8_+^q#(-t8YgJD8SZti%`$UC++a<=$zE)z8#Q;M zt&A=56reN6H?7ja!XVSfv)=P@2VZ9OMRW{3ug9pC8R-q2Q&A)cMosd0a(V9e95Emh z>N_(9A|eVO^f#_?FIhGRvj&yO?XAD8t)pEr$X$mF+Gl?!OFnj+prRXm69T=|?8faux%-K;q#posV4?>>1Wy zO&M$-6MmZC)^}ldARPl@Gp~@XDT3?2lT4HuPQz#qqSwStt_(V@#^Budy(%Ms7WH2< z&)@^`Vabam<#}j!xVcAO0bhGjv35;QnpKM&%|D>uWLQla*zxm^;bS}*l8GOIdAaXhmAg>ifR?71nXEmKh^G6Rl&KK$mbR>IMg zkdZ4K9nA#2u9ci_!2DSc1@k?tyYb|Da1^e^t$o=YGM_ zBQDo-he~(wRX$8_yUA@oj%`>8NQ{Aq>f-2@n<63lKiyyt9$KRMVR)bWZ4al_SdSS_ zKZobc%P1jh0a<{I1!*9AIzLHt04OI^pv)T4kTV+#A_4?aq-qR- zxkL$TUy!rZ|KqGeAX$9_4vlWNg+zysW@Zj@?2os=3}n%Mf2@jL_euRek6^&5D?xwQ zuoCzSuYus)=|fmRZf_L1h*wV5Gk_1`e_8_dwyo|Y4(ilchw?;`34Qp+it@~~bRT?k zmfrs)@78>#(^hM)>Q5TpGyLFknW=RvMfTV{+?OcD!%unrdiRb%MP+;YOT*DP;77LC z=v8kTjAP?voNFm^S5AQHVXRsgz zd~;za_?{!)j~)xT*T;$JT3f^2#rpbsbF0l5Y2pD-@)Ez-`<puc_VuO)H3o_hPOWLQklUIRSMC>GqF_U^{56VsrNQ31*eJL%tD@7%e+J z4ex95#-pt?pw?9DBUheY=I&;4}ay=#Vh zw?CdD#6ELxr5p^80|2ly&#*M^Ct@Pfg&KLHJh>FVw~88TEP1b3S+TWFb(lrr+2U*V zqHrZ}NST_V`y3TM!#-!RKkJ=0Ix@n!pUhvX?LUBp!Nk?t72%Ai`F5b|@!__+yF2RT z&8yl%jLDUIZ&pEz4>P4R=bOUek7*OnkK78Dx=K5fL8*{~^G(|I=w+M4wKw0TO9k2U zK3~RmR%w<}oQ!Q4mMNvoCt8Mt^eEcoy<*W{QGPPs0Q$d*8nWPm z67M4W@WAt2A8M>`;N}5_k=eF-2e}Wj9U}>n0og-F!(d+pX`9dP-Tl-uQgX z%euiPUq-5|#I9_oB_nua=G#OLsTAua$&SKO+kf9PLf`rfjhJJEMxJEG*y~~4<}zWo ztM;q7dduex?O3DJnM*xUH|)LH)VVtB3@t4y2%%6y7cXNqHe$)3&!9%f8aD3M^{jER zBTbKo6V|A_Im-m8k)eh{+ilU%HTlL{Ge#a!qLCGY0L)xAZpJRY41xOcTa`Vcmlpng zNOi^|R`!~oB3A~7u2V&2tVa0yHRaDGg$&9$>psN%=R1)>#k50SHTm3NQ>2-_IDV+o z7|1d0#PO~+vhPK+zfH1jseSig_C9U1Vfe~PaAXSD^;%$CNymibVhWYK8`X@9LTyG3 z+`gduJ?JZFJ^JxDIyS}O!u+*{G4HCtC}OZGRQ9y8lP9(b z;&V6L!nqT3OqnCI$X`;P>SFpkrQQ82u=iQ`i~wuO(nrZ)?UpAPK_1S(2vlVpim+d| z+cpgx}$QA^{rrcdq~a(`U#2xto1+~yv)qU^{>9Xr-9to|IM zmN^R9Yq2rbOK{s;xhN*`syZh1S|S$^Z|NL1V^$;`l9Hwlg1#4=P`L8<0021-6h{*ea?^(-b@+rN3bMBh>daM zhh2-$#dFH~W_lWkD*a}9dj!Kspn!nJlpRIJUferBq0N6P9vF<^0eSoE6AX36qLGtt z#msCNOG5F^mUAy8iHlU&&iE1PYot>RyZ?T@0r%q3e;CrJ?zz*RSIxDscUxd*n-dd< zedN%Y7u=q+XG6hW|EQ@@&1Yszla> z-$2RhG^@|}J8qj1um6bdL>!`7V<0hBQUZPPU)sYV?QU|J!G`0&#pai~T5G8(9(1^W zJ7j=gIGoq~^=*oteo{QY5p9hq^ z{P5Z6&YHa5bB=>hjSPlnR)j-Aa5KNzpn(6`%tlXu;l6K(J9o{-bt?t{my)zS2zvbn z!H~&*3kKkfj^J~xGJ!f2!OA<*3>8L3y{pfoS38HitXq5>k2IdgpZJhku7&A;qPAO? z9z|E*j3Qfq{s++k7#@&B!J;Q+E$mgcbn$yJm6sc3cCJ-Bcdw(zf%$b_E>nIx_;Zu? zhInbeOtx$7P$qG6549w1&x+IPvBb`tRQ5vX&|+w02%YC|Iv6 zyqA=N8(2<#6#2Zp1w{v4I_5g<%<@$zLPwnx@nOh z^!Nt5rAyd+P9i#w$b61_%AydDIIWhFP44TksRXW@LW29xpJ8tFF%!&i8P0KHBOV(H z)4u?5!+tp$01%T4JwOI1Gsx+J0dm-27)i%J$w}oNIJ{wyf%{7&A~+7_a+sh%c__wj z`HxwId&hz2@Wwij|6#}eOlkt#|Kl`b>HH!>k#l&|NQIi>0w>|6+LH38&^bEV2I6;BZ{AuE!BjE*n68_K8 zPHraXCmm0|8=C-*;E$9n!#rmgAa|W7WbD&dX8xkkBZ`B-(56h#?LvumF8cR#0|b9! z!(Tu|#9icWc$g*%_=hS2WbuCLffJ9)Kj8!%t|*v682&Cqw7(H90MHHRe|_O7!v_Er zgZ*JFMgQ#z12%(+wyySfvU5K?l>hyP_BP5l|68j_eZMPwMqgK=Hzt?B*Xod}x#|E=^QEyAqkUHa zB?@TCx<1V&QqN<;;kq(%p-_Gg7XVzM5CdC({MT%K0tJ;trW{l(hDBo%fP zH6Uzuz4J^cDF^jm!-N>9>g#RE^Q0X%8#H!|&<_M@$ya5?ulI=-z% z=2I40F97O`^Y7fDF)OChaNER%@W8nX)xz1jCsEaLE?d6r??3ThNwDaV7~hoTa>2mM zu`7-A{pI2f6F_73K-sS+PW1-d#22@Q_CSOdN=o=w^AJ=8Ytuj;%g*teb<)em`{$2= z4>EiSjVVQ>kMI3DncMyWr~q71S-{V!Z&rJI*jK(k&Yf%l;!c>4^dE|+7zx7i74gDp z1hdV;QK8gNUQxef(isWKSJvvti(~Wy4TtrARa}K=+8dg3+zmu~AIe}sqb$STJv1LF zusLnxAmahix@m|L;At28a-!6%38vZ%$KwrBb**Z@#X|0?G?CH=o~%wLhd-<9eg=qk zc99wV1_wk(QKwNK&w^Q5%>RA?UU*T`=bY&6S@%)obph_w$UJ-6_}3kMC#&X`n#9!c zuOcmDVWEIoHY!^3{uJl0iy{jGY;s6}Cxt(hwrQf4fiGi}S z1M>tp033f7^*N15-e+pFgrT*!@a3fDT6kgedH#bA2>+{KdfTvmV%g&OJm)kh{jCXT zEA!`s>;PPZcHPID=U>IsN~W9LPzuw7?CbmKNi&W{s?8_5%3kb#pfm0!yLVjV zhpUxN+fA&C5L3T^G|di!q2<)|%R-h8IqfS1CXjeAMt zVaDKic+6r_3iL&J{=(10V%A;q75~j((yE8}d(jrkZ>qWbySIf+jeb`&$xa zxXc$zj|aVt1HsJ*!Ex1js^69HB>D4PWST89J!S}>)GZrdqq>M)R>SDZPd$lEa6F#% zM7c$kD8D5 ztTkRHin}qc^Aoz49)X$UXxI(pSF-%5t6eU7h)hq(ua$P^B!#_)3sXK>MHS*69+bb_ z`dk#8h6-2jzsS}lBBPwg)&A6+>5-7(P&T2ZXe7+m z-20AbTcjg)?Kk@SgfpBjcoKK;e5LhuI`{NFVyphQH=!=Mb%xsfVE;oyfhTx<6kGn< zA+0y%!@1PN8+;S%g2UlyH@IFh45ra6CO4S?_3=1Y>3Ca3YKx;&pchr1P97RH&ZXgO zrl=|h|Ki0sgy%7C|X92^*6x@Fv3dpMz)(&#(`3vhlY+T%Vv#bYpJOLO8^ z9K-(ONR%C*V%Z}sAh{HX&(YI%ZI^J^&J!V7SCd22eaWpplS#_!8;9Ue<+H5BrpHgd zuwfDpL$p=%^3js;xlEhyzO0hCV7yn83&9{#CU5Ee~z zt(7`UGQz1)Do@X;;!KP4gk$yCb7=|J4u11e9Z|8)H>|Ezm3_se+BKWIUpVjHQU(`9 z&(@X`kEX6d_yOV2?a9s5p+d_fjRC8a%mbfttg z(#T^#_QGJT>$hronKWmrr1Sg7_+-Dyl(ejZvE~z#ueDapQ<1&LqUgT#*;+Bq6kGx%~=eQ1W85w*N(TiCHvoijY+-Ys+A)NHH? zerZL*HuJ_P{E9F41`op-l}F2AGnP5+qSKCP!oYeus; zIFA$}{x`k>;5Os(`CMa15DSG(ADY^G)fz8jW-?7``@5zpP3s>N+&nEhX0RH*5<+f17(v>Ya=TLcUa9Kn|k|Il3i zB((y%&hS(#P{X`l#!uqC`iADwx)XgJdCOAsLd+>@oBIUNT%dHsOPl8Grz+gu=$Zrz zWEQAQG$YV~uA;tvu?UF-a_uUpp4k+b1_)TPG+pF^X>({8#99E^eNZfu*E_aNcNVA- zq6f(E!Z+}XavEACoyHbZ=pOHrlgk!BplTy-ucseg9aQxjVGZ>mc~-O(uAwE}giC=g zzHY$n#~q_|OfFv2b^h(O$?^s3KO$Am6`=6PLJUd@Wn5{#ckRPZ=Avsx}vh{pATce)H#xqX=`|W zioCirmvYcOT}rSk{Zv!V;d3mFbdWN{OFz~X$%9C`k3J61x^v^Ts#+>s&~|3!oN~P2 zl>}j~L+OzmZN4MN@?mw36hwaavYw;Z|&FX7ZxDc~cd7?l)bzE-2;3p-9Oi=6j&O ziVOT@l7mrsgI#aWP)7Oz+KhKU4t#aMRlM&yjIJuuhgf0>c2_=*qvLF8c*m}#T zDA%xUm>NKa1{shJDS@H8Q4l4ibLdX#a7Y1Zq(ed!kd~4jO1itGJEXhb+r8b-^RDlE zS+n@T8fNaR&Nz^1B-{R~)npi6F0)*DX+-*lT=b8gG6Zv@)_x|PWep+NkB*JwiNlR1^fgHn zm(`?cYAHEXUOv|{Kd5j%0Lqq3wzqU?OKRQFQ?m>{KWzNl-oW$1@>iR9QvOci?8g@P z+XUNEKowUrndE2vaFOGB?t4V&kbc9PZXd=-DC5{iROBi_nDyQ{FU|#f> zYU5c?TV~SlBDaXH-i7N=t0OI-^esTlVt!0jrE$*i6oYT>^LBW(jILfR=m1ci0t%5= zFNr2uJK2VZyjn#IG7H~fK_~p0jJ|nJ=#5%4`>kx(f_LsDA|@LdeWq+d9}fONQ!lw&^=Hg{tS6SUE|Pd4NzwmnEydU)f}nBK_qeLrpIccl zVsSRVRj?}BWRvTMqUaNrN&E~01FayOeqh|s3lHXB%;4V4d%oxDqm&hYWwOJ=>d&jZlUSZTSJ*R)!&-h_Zk z4G$Z=mM*TLjr^Cfy@ezzFVQ4LG2xF(-f8fk3H*xr?&@l}UI{2BjZf~$ejX0tj4`Gd zGAv+R8O*A$?jDdcEmtZ5taLj(z;hdDy3sQNNX$k(FSPjr4*zI+qa05)vFD(Idw!yA zfAok6zFCW$`0+5O-1AMckI?40+ofuhBdC*)L>u8srSU<3s)vWx)k2OZ#eR0g2w<_+HLayU+dZX>Z3ueE^8#pS(QbZP>sN-|+`M zfTmq)mK>>k(z^dC;-2BT>lj#Apg$VR*=)Tbl~&As!aDpq7t#>|xw|3IM))`WG&~J# zNSsbv$g~#0nVn0lMQ4(O9^Q|qJ$mC5Bj?ly!&hT5d?%o@ISN*?l2*}-<|w|8|HMkB zT)&1Ia-4#oDSJPZI)t(f8Wh$d_Od~bmD>e*1!C$SVOEI7fs_m+si)XPZ#ojyf7cBZ zvc7G?!_O7(ARiRk0RUZ2LU5jX)6bp==^JsXD(tO!5Xn=M3aUT{G}*ttR(BgwiN>2M$%x1Mwl`&d z;FSrF@`!(4azgN6Ge|)B)%ME{v5Z#Z7x7x1+E2R`01_UCCtCAeM?Uaph}BBDe`}s+ zLX$MAMi(F^0mScv3BDf`7Xcx+29|x5R;9cVq)J6BZqbc)!yXf;yoZzA-G}U3&I@g=$SSjFME99@0=hpmY$>9Cy%LltwGwtDp2v%C5X&++Vo|hQ6*$L;^+1$Jdy^UMS7oaaceL z4x42!DtIZ1k`MYc<%uTuZe@9hbpJPrpwP}J_?YVKH5BvA{Z&o6GBN~EHEc4o`Zl*u zDL@Cf8)KsM>{eEO0a@HY@dxJ|9EB?c4<66l;qtS*kzWaSBHFq@lC-*EFa&IjRIz{C zL5i{~K>icd?>{5dEv7Z9p_f4nnmLpgan&`Doa!9SOC z7xb>^y#zMbg+cLycaG(id*?b$I*_*_6~Hih+8H$>JtxU=o-8Z0W2uj)P!y2SMm(|!LU z3Hb*pqU+{gmMz}`b(@NRV!=z{#mG3t@H(b^8;tI-@}XrFCK@Oh#XxyT855h&iRbkk zBe@-gzouxLObaEn$j@_wAo}N^*D>`Gr?ND1w4wi7y`@fiLEZRY{p95>QF4c(?}@%F z@%umc0>na8?=^i~keb6S8*)DmTWv zutxR1%r3%9j+t9|rIA9-@Pt~g8z|F;eQdf4wIcGd`n>%UP>pH#QLB9_eXDRc^r+RE z@M}z~Y%@WsUSXyg6b-K-t^_W1hSE>6?+A$N8<=klmtg0j*Dss=g9)8bsSmMX>eQIk zp_gS48d*uN$x+i--+tU>s*d?Ejrtd2Y`=7x{G0f2)G24sNSZ(7<(3xUl@Z_lox9w$QsH`O&4DYg>3DG`Mm;x$Dya=C? z0P;kwCZv->>;C)@ymGg2d-cYMU86bj144l_{D#7u5<@k;cG~0Qx}i-x>-$&b6Zmui z`C|=pH^k}FPwv0o!Gsf!0$llfoQGR91wx`nRfH!QNa$5<&Oyj42PAt3`K0n#5BYkL z`+D=%6R~;sq*eLjK80f%;|cW^FJG7X1>--$EBrC>*>)-CH-w^8Nh{ONSHoOO{40fP z;6cK;IB&Di&&yfl*5#}YgvA>?psRv=RZVpMDwPbhz`W?YR)eY$1P;~lPVjprWBp`q zXR78YKKTt0t6+W@EW8Mr)c}&*(h~=hB6!;JKF}FRP&f&wVu~?Td0!fwFBVc-t5JJG za^L{5ZNP8%2$XOZgzg(0sM$HZp3l2lG%)Pt-L|x0r1=_GV)#OsJ0ia`nal$3PE*1s z%1VacWvb()=mPJK{A5TJ#OEvtL=m49n6_a1aXrRVQ%*8eG;!FvRV_gGkWUxs6 z1NkpnoRfSSie2@oMu*KJ{#$oDzIJZ}P)WN~%j&Hx7bB_Ka=}7^lTjS{LN-WLSo+%% z*D1;egFtrQ$)EnxyO=k+O=ccv5O_TKaJV~Y}X%Q$5C0uW9hxZr`KN7q@8oi=ahX_mGrXTC_V%#etf?CIS#%Jg8fjp?|xigiAC08AsXV$h_=aUqhS@*gXR_TY- zqSlt7H7=)2KN+&koDucI{aRxI3oO}Y*H&AelfozI1s`_d5;I^ z1&nMfn@f~P689&{?zxs|4FUC)O2ZDt1Kkbxd%88IyQ!docY3T@jcpfHuR}2W%eK%D zYNC%ZVa5e7vUv%|y^(t&U)Iz?`Iw&)=NRJa8>OE&dM`?~jx2;P2T;BK z<{#>5d_IhkkwE|>vuHN+zJK(yB{wks=Qzv%kKVx__m*PGr`Q1jT?}S*^xP|5?JR6> zt4z8HT0cm}6sXfYZ;RY}{eXr0@eu&M-W9KJ0|IP`kAp1DN`Kb_=^sK!K|AbCE~qK{ z`G5RGf=rVU(A@~%1twDA_w3#}-^npMR82P?aTk!zhkVB->o&b!Y-28=8L^8bA=P;{;3wV~J4K7usz zoV{Fozgy`~&A;WJ_dU&qlm{|(4%WU_{ShT6|9%sQRTeX9pyMhbf2n-7uttcYi+eX9?tx0#W7E?%VmY z6Y=e^jBPEve1+@gQXpkNt}uXyu8&1{dM3-kEh9ugXb+!}xg)bPW#!(A$WElxqA@bc z^gMpIViR{nb?K`Jp+TqRb6Bri(ywawp7MQO`&?^@u1EhqQi2PBqO3NE!df7h!O{Up zev4~*Y!(qcCfsBna*^*HSO{JdV+o1BD4HNslsyFKVKBh2g_ul$ohmN{l2jPlB)U&r zZf~$2Xbgl2zYn`V>ol>TD?aA?_#re=hShD}q+@zqX*-}qvVK+Mew98SoD@~ZroZAz zPW^k%rg911_~gN%y_0DLR@?92M0yyxtZc)z`h5=2d0Sq4=-%VvaX$MYBD=p1eorTR z>c)`sod*KY5Q0$!2$C*4?WSm=ziVGxs}E-0m@AT`BLTmcZZzgHjzkX{If@$J83xm_ zsxKYAEC>`kX+?cS@PwQS{a-0bHYahGq5nasWJ_}I+S^nV4}XfGG0M#I{*smD2V)mf z@>R`e_x2Y2X57hJ@7Fh8yIuDyQ%IX)7_&e%cVr1GsCv5@<4o`sm?OXXGqB7R#0fhXTNSEqev+I z_Q5uiD_#M9^v&SQYonCB_1eRy+y0H48C|N_z4JBfbMD#Xq^x0WydM&Y%Q`=528+V4 zYKF1Kg2gC?oU_e4D+RHP*=ReqoTbR8Toi*^Ll_j7Y-=;VShwfo>}^sse;#8~y8@Lb zzrSfwqEZ;w1_utSV+ZF2g3&_D+*26#Jaf!#@X@6Hyp$8;)X}gx4)r1TG9>ruLP{o= zG0V)@+`fXL55__g0($$^<+Wb~W<&F5&zR{D{?nVWuyRWGL8!mDeVB2`BD+6K zK|C?kSfev=uV^SR+pdedr+l=?nYNy8*9nT!Tgb3y7k%hO8 z=X^WYJOgiVc%AB#Vo@uol_v5t+LzjJ z;$f`F69GjlwW6SYM@-sLUYx+@p9)oA(IF#j**$m7n;@yQ=iE26&;gWA&bP?TnmCMa zBd06az~?B&P;RQ9&Si7RGkA-Yvn=p{MJrzWxey`TK$<=igE3?1l(Vt8=&C#+h7=NP zoKrrv(1^JY_59;wO6EA51-=1tbP?`5xZ*64CL38DHApV zTckz~A^z~|ASrxoqvJKm-*cc>83b?D5V)PUpcXqm8&aZ#Gv2oB-u%8gG{dv*x>_dp zyVqgAD!kdpTfBOFwR2PY(34E@c6{?w=sjZY!Mh08(0lB`%V?R`o)NQu|J8o$!#(7| z)(&^b+IsuwhU%=$Ti27?*E`y>I+O-sB(fI^qj9Un5pJBY`7t+E&`CCyphlAm=Jje_ z+I<$;=3rSpwafCpI1z-RvguQr-?J0)?KV1yN^~g5v5i;WBzD!AE%c);es3@4A?1hf zXmCoO4N+{FPFM0~fnB#gcOws#`ye=Vvmno4BFre2dG$`0(#L{LQSH*=u@}0*gbhv# zbL7~;h0*g&7e+0hH!9~={q9XE>VwNF=c`KMjqRl`Vi-N&QN+Sd z$OjlR@cXKknUTytCFneU(K^N(zUtudST-2yaSX-`qyb)GB{Lzg;iO%9J41vK4`L~< z%+I~tyY2kR(7SELS*lZT^FioC-T9Q?NlY*OA>sn&@Ib!LqKmY-2=!bjf?tDX@2GF) zB{C5@`?THAX9d1skrS+5Gpuyf(h($auYN<)+FyCc! z{27j_=O$h9&^g~F?x{YWc+Z>SSj?N=J#?8fdO-owc3lu0=ZBdNKH3(hwnfPT5)NLL zd&4iI;h0>N$PUPK&8iO{xexzRA8%sO;B=CPBd>XeH2>BG=l1I{&YPBDWAW5tldv8P zZP-XuF6LBG4|iV;1-9nlNIAX^VhVgDlD0bvZ7~bhBvJ}BpGB`Ud#4+j)%{f`I~ql) zZKwAwViDZ#zw^Hv4hLbhbLhIuasy(bzUu4=MIb{nk3R3(s9{u#Z9$5;KG(y%$CUY- z&+_xd+ZF*^b561bu?wX<20Iy}^u2wDc)Cj&7|oxeYIKhz&I^5g_xQ!fuh|6+zb259 z0~Cj$!{+;_Y)9cz4;7EaExOP!$de(QibR#@YZ5i~tpfCW_+6@L4CO?<9%XrSkU)Hg z$iUS8i`}FT11c?{?cSm7*PvQEBnvz zu=>m|&VraCpAuc zP@G8Vx}ds&Ta3iElI>zFBWUX(nWAES(l{J#kK<;lUYW|nQtmFWy0a%9b~kqK@;cq9 z1FD^_AoTm&3AGy;2iiXya1)YpZ0*-Hf)Z8yjT@~(G$$ku1skG9jH2}(r(KG(yCT@- zJAct~FXoN_v)ARdi*w0yh%kxJkhwIn9XC7C7xyrC8EkgSId@U&nkC^d=YmM|y3Eh$ z!V;M6&qMGEF8%Da5wYLSi2K^G(#+>FHz#)7wlJO%JSRv}=T#iKNFA(Ti$?~1GZo={ zreDga#7zdvp2x7z8GbbMhOL4owA~lY!gx;x$J>6%c^$M_;ZH{*&TD)~H?)jT$7aC! za_qU2lp*rp3FZ^Yj48if^H3H)ZW%*7XdGVa!LD2`#ok?}LL?5pYE%L{FX64Q7<|!> zI)=F=#zN~ixnIfy;lqgWSJaYX%IsjVg6r4qWzp!2l6c9lA(B||bxMEzP)(Zg??u~B zC#d)u!GRCZsyHL$X+gvx%;6wX0rlo6rYwC_*Q_H2rlKhMOe_M=FaLYZx^(bu;C{Kw z8Scb2CQXd(nJn!Tm{>ZIXI#?Mv|fBjN-6gx6(gpdXgfDnOW=WcU&T^&xM1uflxXX; zVMgpA2BmCE1=E%SwBajJMKz%e<5xZ?Q-TUBkte-uq@PN}^?%`u7^i@j>p1KZY)Q;2 zkOJ1b*=v!^B1h1ih%4A~Tg}T+jS4jIRBmla3u76|q246I4#_`pL=lETQk>st75Nl9 z6}6LQK|^Sz@#N-#tA$wq1`TN6pNjm3`0hUYk*~UV{-j2ayg0K!nbP+EBm;m#uQwC@-A0Au0UK?)qn(?N~wP zfh`+DV~ICN+*BQPjlJvmHKydp_Gl>LQV2;b7Y%JLNCuwX6C1&R(x2$48WsVXrD#2C zkkYR;E%3vIkRUGO2o4BWw_qBkLdi{bKW^%he?GxJX7xs^lb{!O`7s@%`qIbPdbSn8 zQ?LS9ylW4;O4;O6R;#o3ODX8@hJwvR!5<-Gc4=|E(JXXbEKm|~Rxul<9`|PEMhw6f1S<+Ssr=b_QL;#zS5Ap&q~*htc@o9_+3@2yp{>#5mT8b8iBPcN(qg@? z7-10Op`BBl{7FFIf6i;nzuWNHaZAf%A zkw1mFVtw$**Tm^)LEfLs-=L4Y0xgzmy=Kp5o8pgvk}BGh4#*XJB<4@))LEl1e*H~* z_gq>*f%F>G$=U4hiM5vj%f`vYPUzQsj9s|D^TO~6$g&E*MVr_^t#MCVq@8N;Hs@|j zTQ{{lTLXlvBr<>4t~QH36jGWP(l$GzlDpi~-M3CS=#=?4jD6pKz5>pBqUxD!7jfl+d&RDcC{XS-)NhBq!mEO$CRV-L+JEhnikt+O9tm`IS^7@7t;++wi2sL-1pt zijvV6loih=8GBpAQbKzik+^qH`R#Iu+>ZlQcmOXLTf^#J;heP)2I04b2Z(ziB=wjY z`B-L)qUNIN%Q80(MB~#=uHmxE1Yc?YhE$f(hT(= zR*<-iM+HY;PxP%tj8%1Y{m@l?-1N*n)s}O^gV^*Tlh>TEImh$$G43k#oS>Cz&jCxgLM=Mw&!~OU7KG zpz8Kh7~7wa=FiK-a-{EAkC7*<9yYwdN*yqb+{q2%s2vU31l2W*wbx(fJwkkim4CZ_ z(IA;vnq0kWZd_+z4zbeEkvOX^`RR--oU!#I7KB470$cKFV5= zqRFRanBSoUP75r_ysZMW8HAA9?LZ2I-K-#CqMJ4Y4Zldx4C_JbSST7%ca&)i8Jui$ zP}o5%`*#d&Jxt>he#q80+J7I{U4YeQx}zFVlD`G9s}o0&+QT!e6IYPsWS`?40LVcA zUi^$7R)OuF3!_mzd6KlUD1>O?b>&ycS~SQv3AD4vh%7CN!%N@Jzs9U;qy2lTmQ<0i&v~Gkc4z3XL2*)wd|5y zBlB||d6Pw5*1ro)wa#`Ixb04#=Zj{7$hDz-(n)p&qPaxtgdCo1K?=xvg@Z0VN=&E( z2br{NaiW3rMD^Gv;4x93aJCJJ5TxM4iOnYznV*mZ8O39D<`M_85H*s|<3{6bLt`jI z4NtIVTdX;a!;gzw7^|r)xcZ}+L(a&W9 zb^~iqA@r1mMacH*RN&;XprKR;!N{4n4#Ug@bW8dJ#ls<{abABDsy&p!L8zeUuhMv! zfjK7ZTv(E&yVWN&G zK{{3urYa}R))NZz9A>=8x1_=rWG!zO zS?0(?beXO0uvvVyq_J|geir6lQnYAUWU4~u@!#4hEgUBVuB4?yY7ooy{<`QPHoa?* zJO?3%-6>@i?$-S>-GHcyExoKI>kI^FreH=AHh2hE?-=a>;%SwV}7#789dnM3oNdgr#9G4_*2 zUPr;^Gd_b*PO?h-t_#~JO)w*pU*|6+rVpG?rO2P4$43EO?$UtkI`BK3GZ??KCYQUw z19G+*d7k8*^~>(o4SWkRm);DDq>c(QH9j;W4HhN81`X0qoqU1C+G@XQsT_vJN?6cH zwpeCQNDWLWjF}Jjw=@Q!+@Tnxfj)F=jhgXAp>jya{mkGoDASqD*j1cS`c*Y97T4Fw zT_LFkF%)oBUCX}8QNGH>5Z#R^?(7dS|6xxa;$mhE(s&X;wq?~JBtaFzwBp2~WYXFL z{cGa~p_c0q1hNiE5(I=X(^En~-_08~cdY z5s1SG$Hlr2QO;4T4+(P_0@Eb+ByW!}mU{&%T`SRjMxZJn%w=fZ##FlfEvmv-82)>y zH1pYxJCxz3Osyh5Ql8J8;qlB-rp1Y|tAqg}>yWK_d(!OsthtP930<{J-&c!$6}clz zR$)m}yr*E@Bp1v)re~mT3glwOmbKq}76CQNE^%vZ!@T`!v6<4$oCGwRy8M)sg3Rlf*Xb#%kuO*vJa~`y5PmFy@g+&1oP~!#O9uv0o44Sa!K(Gcf2* zQgj4LLZU=;YrUVRQUs9U)cK=>RbA;q2w0l^|D7YjhrKYsE@}Wpi8rbq$|u&1BA6mX3yF+ zy62vgaZ1h)g}K&eHVkhSQDu@x(B5x-VG#ybOw%%-Pw*PPTyaR+Xpet-hhjVEmTzBX zKgTzAibK@-$}7{zC{V?gqvaE!Q*&B}w)}_@pGBwkfl6)vVam21V`&LZ30h(aez?Mh zoLPi?RYu1<4TS$K%D*ASN~1L3NA3DEPr#DyZFZ@V(1NL*l5^tQcPG62?jqXyG@W~q z@?8+Y>NKq)0YwW&>nH6HISP|kD3Dpe!`b9?q*+sbo5-59;v86dfxF^M8%?s}sWB-s zZk8TmJy8EUa-W~=^<#Q}>Z@ViV@s!xw^%OajFeI{5NUSD}?pht&x@FT;`anpZI;tGG?O zdn|t4iwzCC>SJe-e0Y(lN|Vgrf%(e(GcZHIcZHn1N0<${*+wynD{YFBp5}5Ye3b8m zB)|jA>!>D0f)8TZ`bK%9O)n>>br6!zWU!|jH>sS&Qozi&+J_EFXQR9;WXYyn>Khh) zHFHTNHgvtZA#{m#gr%)1`Wq_j4+T9=k5bGsR&_&aD{`U}G118mEXhiPv?*&{=|pux zvdw4IlJvUq(GPO`c`fpIM< zC6;J7+HbmWj{i=uz#q$4{RH(G9QJMiSS;SBt0O?4dFwg%a$=b37x^}?G;@7w?r*+m z!}CryoDqwhl2>mBCnQ945t3@34W`7#P8D7!k+VJLfINxKZ!Vba1`#_eqIHgcTN$!<{;e%l)llqiS29GAvYkQEGIiT#K0ruXY`^)C2}2Wsasyb ztm||^ZsMl=^oaB|v7ivD7^pE3i=v5QA@)a7ae22X?cmTanZH4J{#$;ylwv0&7C2#! z=bvHOD;U^Uhl^%;8N`@ch9%B|K&tqj)SuWwyGA**{rv-rdJyFqIDyhgeg^guDk)Y# zP1zHhk20GQ(vLr^j(Q4C5Fc8Pw!xUt76Kg$aJc)+G0YWbA+_(I4hzN4!k&o{RuS?} z#H3+oK8?H`4u6Ycvr!AyB{a{Jp%oc%Av32j`}LgrzijJdQ0EG?FEeKUXKDvCPr(dt zGkeK~SwSULyJ&YPB~MIW^2J_TZT^#s6^ulTj40b%L@K=%d}J`F%vZ{&XCJh(s~j7=tP;zjG<*Da0vm!WFThDk;yL^iHq|G*UV+n6fizZC zmgmK=a%2$zkmH{eI{Z5z%)n`(!AYo<0Q$RdD9t&Kk7%9QAke<&3yC0>4qc0s;K<(*velJURayqn=BF8z*kt56XD*&A@~ z!hXUnu6d(`rG15%n+fdCuK@Ef%w}Xo(z581I}^-K1IPp56z`os{<%!xJH_0&FKJ1jzZQTz@z1-{HZp)I^+Lq8Z;G z+l}-@bj7pJl4^M#ru!LL|KmJcBrL{U#mYvk2KxtFf|ngV&AsZTcHbLk!KwdQ#4xeJnRR-Kge%PSYtWB*?*kHx06HpHho<$N z9x7}p=Ke+D*hP`<1DqNwQ+)%T($bSfp*o$QrX2{UMT0}rLP};PKj|vjL2>EnO%qK@ zBW$Tfvf8_Hrh-xnlPaXuXc!M8h_{dTKQtZFB*w-42!yeI{pb4-=W!VP z1`qv34*pY!ha^BOn6c_z)^LN20ZUmouY=X5mm4Bt*@9QYjgY;0~WpDp_B+x`=HYzyJ%7GHp;ZPRt>}W`=?T!p*j3QfO&%l>|a*v=8pJ7oW_mOg3y*}x&{Atkv4^% z0T}m^>#p5x;Ly9RqB(OuyjX#H{FHsUVImyhVHBja8YJLLEsK3r@bC}j#3EPE+|L^sxI{{N&&WBQ8-i9v!ELwo?23YEU+b@S9`7W+&^$!l-Pb4>c zlH7<-T7b)P`}S|4i3pK&*?6&5Yr=^?ICeePF+{BD`zpQL%d(l3Vx^viKBLuXEI zy>ktTz0xd#q$Hw0n|(gRE%FUcgSm(;a-O1nh!<2Ed;UKjF>v}OBiA<=82>{Z-Y*m= zd`t1*O%LYm1{`_o))wYP*(m6~M|!JyO@Vf03%fv1VYa(!+mtBET+BUaJpl@bNFD62bZ@YLL%$3#`p%)$kx z)wmFki}NCY)Jj^V_?+RXKc}?I*oaT9G4Dg?VIYi#B)sq{Z z%=n1ow2`0Q#@ui5W#1b6RDYky^lpz?y#0!}_01pCfEMQ8NgN;BE?rnjBHQWc>K2Zo z$)*R~Q)^uAnqm|Z2kqn%F)3-<8#xSlPrCeWyo=ZPVY-a{>OpJefv>E2dFuWQaoxf6 z(1;~WdPbam^f(z->MCLvx`^kyDiwQuaP{e;t$8BfV*x(bih5EG&RlbAdiRj1#VUtn zI5aRQ<+Cn$+kSWP&<1U8n#KIoo!g*8hH)q5By|b0m$9u};p#7fQYnwi-Hbww&?}de zXMWNIeeU*3`ss|#Z8$-kQVh!`aR{zNo8yjNgy^KTNfQ5$@44}(jD*&%z7xRHjGoHJ zo5;h>^u4@C9jZOna74IO&4j>P3wBC_y>n-tB(A(VgtD`jXzfikAJ?;9ON#I*W=~|k z8No=y#`mXmY}}4I!Po%m0~m1vci6EF-s3TM24bpPwF@AwB>A3gJ*-dZ`wUr%i|HB@ zs9%r8P+UbV`d*v~=xYg~OvoMTO$ho=NgS>~w5Y{yyL0hGFSD@(n1>opDHpB=VWIno zyUfK2vk$>LXWEWsUS~Ln<37YGaNu)aLz}9&Dbd%dap) zI?OnY(L#paBjF6a=rmUh=-Hrekxa5rKkj!Dbc&Xsz{~nyXLgcde;4R(IxO){Jg@?L z>BS#_73VH+gfyV!4&~?dF&fPcwE1$S;h-K>{oO>n6=$23l|MH@8;!~%%!#>%-`C@A zQwZ;3_10@rw8T{vA!1Vvyy`ezbgjmvxAp~_k4*v3olnksr5dxe2iQu#d$7d0sX&Vy zt7_nF;JXcoy7E2QV0w@IV>&rxyvj7sruJpYkRA3e(~y9}7Uw7bLt}RsZWOPA(}I93 zezqPSP=Q_eBsAA9DdzB4tMNEm0--nonWm#Qc3stG%FPSH()K)!3oUYxny@YS(bp2p z13?1dPdBr zIRC4tCLPINj3E!C8yrl418^$`OR`~Q~PPrOk!z3saB07ZR^Z# z@9A)#;;hcjr45ZtCXvA>|7FP?8HHh>p$XHidx0|0AmVpDFU+65@YXKPM zw%}ag_iXU&%cgdlTvlUGz-kt_7h{pwa0g0ii1}XeO%<-Zj}g0OzNKQ<7StTXU-;t{ z1k*mMB)(L438JF%-kQsmDT)l~Rq^Z_x_3=fbn43g{RRtBXr(aA*%oUzNcsj2E*JEvC>SYx^3F+-Q6ckBRU{SAsQElwIMkQ%h_A?HSZWPXdY3O@dH1m+BH9p`Jn zXN*yx;%-j#_%H40D5VoPo#({D$ImktuGze@+=KAqDJeTXhDm1l06>Fw)@6Am&s-%N zG_(835IY;p<;i=IA|1Y8<@~m6d>)2jUyzL1Rs!W-WMNW?+y}mIYfWOpq%XLSHjt+B&@lugUi>od^O$rES98I<0G!XczNE04t zYY96#JZ<;#+IWg8p?lc&LS$P3PW*489Z2JjZu}%8b-spgZj^HB3^Eu!N^dZ7iM>R?W3 zX9Sog)HHX2)UohZ*Wc8v8T_4)NGs{Oet%sjq^UP-$D&=`fiLUPfn1e8KB9is!?FVT z^eq{Nso;b@N3eg5zk^Lk6*lLgl$BRaP@v}2o%$81%cd8aa;lA<U{iAJ~KUO6KezA8y!wH?iSh>DlJI`({^67OuF&%|3yCn z1rLbp2NmP>ENtfLc11N1OD(QGMgKf?`36LA3^;2)02uz2M%GS9C-yJt4+T7zF1;=s z&yzyDNNmi-rKF3d1j(yy>!O4ZcHR>2ZtTx>TJNn|kHgq7w0fHJJgr^m%Ou^%OE}#7V|+ zY_&v3P^(i)7*OKE@~iKK>FHZyGD2Dr6~~Z>UgEC^m3zHpF&P9uk0R>L5SsEb)2dBj z8aE@WI`l0?KX#9Y+5*fuI?mbB~ z9H(RmVwm7n%TwR;LLd>>{nTzh)6K*vTgLa~;NHd--1@k*dKVla_&SIIc^fxSKUpc@ zC-#{bMuY8}mWa>Y!QFzJR&&H5;o`&UTPT4^xI11|s7`E;cn816#X{w)IHkm?UBcRencRWF(t z98<;bz(rYs>3f$PgTrTyf7$blX~xt@eVjDl*D%G25z6CuTS9)E2%ja#{>a=dcZc$B zEv~xsre?iCbKvJ<&CjHI)qHA@JY)4vjb*WIjkPC98i7AnNm$=2Tebz`Xf zJEMyVR!Tj#c8ktTf7>O<09--5fjVGQW6wh*Oe`b}`i4*Xn^thor1w6E;kT?YfKmLr z_}^`_0W3ohC-(^CeMdKDD^e2_Q*$I=Ew09cr>J*K&^#H{@dm25$7rw)G3$kfxv^_; z9j5idjAV;`D^1M1|2i=k<38(Bc2zD7Y2sWqA*?r;QX!nvEc&g_JLY-*bgb0Algw{x zYiE_Ip)2Y7s`M1xi*cQ1ScmSV<7u>dPCDP(pSCJ$?|x5Kc|tQRRl}r1VnIqbd`K~T zMKdU3T*bRZxm$cbCO9A%=C$}eJzB)T@v;W>uFnb8!pggJ{Y|IoFcOc-?{sc>K+jt= z=OjkaKJY*X8(v6S7MQfO#Zgs3A+{BBOQmIxefpE}la~o!hAH7}N>KCW}-bJ*#Cb~72^e=Ag#Tva#iT$Z1pXi7TuJ#Zq zW4~<`qriZ?KoDnL3;%LqPG-y~!{De%N)G;4>y$jzByC37XPz}t=g(EKS5h|Hc#MHt zh{9l>(gv_e2|`}Kf4P*+NsyzWL1?7y`Ph7>$M9ln2kSpXpyT%+WD3|c@PL`dZpVRs z-n+Uyz6nl^@%kL=CT+H}O4B}T(jb~Ox`=SLgk5?x?>ND{g-$CJ3^0jye~tD)TQuK&l<%Cc3vX}0M!%6iQ%R(bc4?W54{4tnKMxMR)_kvkNXr5aP68rudZ z;KFM%QN>k3`On&zv@dS!pWriZ4CJj+rhf9do~N*Kv|>6TK*PLGvv05N;cBMQ-nxh` zDK)b3$ImlvksHW?#X7f|38Ah-tZb@5))ZU9xXao!=OdVy@q)c?s>@Ln%<;Q|7@jc5 z4>;?V3K$e|efk;*1qG>_;mj2^L|e|NCP`)C@{pI>a+7?q{%EcfZH${_ESv}WWiEZX za;R;2=JTxYe?s_%Q2Q$oe78lRfeX{yhUgFQXU5jt;yBn}bsJ%s5oABdTa^I0d(L)o zX#&;TGUJ*YCj!Or8D4{A<7$(*=8o|cCTybD8yGQ7V)L`H+XW4_g1eH@@0dRjihnyJ z04|sr7cE+z!N}W@!>uuTj{h|VxE|_zt~|A4VDgAV??z^hdEcp$Ly zx=YM&D+KZ2_{TLrU+*gHk%P)gw0BdklLdukdpRy}Z%V3MD>?xGyV>-=~%Y9EV-||j!VUy3^<+uh-D|bjufs3P=lSi>f85BNp zDjK6GPGue29ui<9o3=75UedikP@Pj)ufXC&qezdI$FWY!y))+Nt7Mz1F)GyIxK?c> zK84(f6?(k<8#z(c>_ZgzF#eDhcm31e;UQBs_WA32Zjje2KXn!`SW+K<=;on~I0-nX zIs)?oD8Q6KgTW8-%(27$dPffoc}x6@c31pml+ZV-N)Da%7ODMwigWyu1C#pTHG#0- zr4$@tJk}(8^=HI5k{XXXCa~Ow53GnWzt0eP7$n6eJjKqa-?gdJWVhGu4i75CrnS0E zF)cx^J`B*+Xf@MzZE3A$A?0vN0bius|o}!6@~}=%oZvgPkB^Du6~5#nT~}k zW=YX3LFNm)=1+RPR3VD&x{}6kSCtyKz6EK)V5b+ztcSF)O@4eOB5Szd~#px-7)%iB-Qk@&DoNt-|8kns!m#8V%BDfIuK< zH}38P4ek!X-Q8UiG&sQ>g1Zyk-Ccsa?_TR$>-+z6_PIXS@GvK1)~HeSN{!2E7ylzI zt$kn^zEi1@e+jG3vXj-`qG`${cq{>qm3nVkUYmk2WDLK^usC{CkC|Lxc!$u37t*aR zIQ#gQp^~XFeg7<<>o6vdof&&fGV~GEN}E`Sh@D|aqU1ef0tzq!X2xe0%M?d)7z!K1 z*vp^R@e}qt6gFt`+=CM~**jtX@eL~=Ita@MVLUmF#5?dk^o8P&ef z7nW-t?$*RLH#0Sl+)$Sw3_U1><(OihW-45ZD9}uW=rjD$ASP1iRd$R zZ1HaIMaEsL|BF>YR^$gn`E{+#g7j!H?a{H3q;3V03pf#ZEFt~lJqv%_Dvyj7oQUf3@i5Y zeSW85mWt-rRJB#8O5ZmIH7mZ)12?*^+p>BuEtR~l3r6xcNFWGo_)*|~s^zqmFPsC7 zGYhBub_RmzKDL}aDmT=Y)c=ht->uz^jF0ymcf2jl`)mT&+cRGEAmRy#xcN=CTon+o zargS-`+RM7s<`a?wEA|cGT(0K6iIj&Kk#0OVhth_7wcFkjV`^Tmbm*a-`J?d0kxs z1G?Ypd|xX0FMbPM(&eMd#5Vk%w_*}8vJ&V@F~yw!?AgS(-Yq=uyYy1_nsp0$9bCC`Z-<4 z^XHNmrL-Lg7jfGeh(TMcFE8lR)&IX^gA=lrzeCU7Rzhw3fqy~9#l~>fjvY`=uXUBJ z=(@x_E~q|q-sl0(5WXeQT%&3iko8vPk)UUd+Osjv|H`y*S&-#Xdp7TuwCX)ik|F2H zD!U<}>ob}N^1^CWh&C`{o0!__rWUv`8~3=al~|{;ciNV<<-KH$+V6Pt^?5may|rDx z$F@z&=<$0Vc<+6kIquc$0l0EM;8`cAdndRf@a8^FsNy z^+GDXO(9MJQXYSM^7VZ>D)m(-l3MX&m&oFL%mub#Qt6S@pk(*~C1SU9s_Ui|AK?3E z*zR^*AB~f(RNrNL{JUxZ*p#KvI$6Ubw8@2!Rkoo^7YQL^3?BT816_VMFFFo4> zIDqp}L($_qN2JlEasN28e#LY4@)z=XGUEnkLhN-4@O=Q@dDR~o(D&&BN-_tSf%@o| z^s8ktCN?hUx}`R6o3Bq2C*gk)E5CArnJoBjhSImt@j zhaJio=BsZG{>tT=7xvSziz-D%^AhN{t)m)hcVcy_`>7|a4%8>FwX%O@%U+*-?R$9F z*0a5?p^L}soTZsA2+!pU*`@7ACk-*|%M&1cmDNNATUM>SFWShj`T6-b5id(>x@uyi zUkeM6e=R9N2!n6XFjd>p9BuZmovjgU6F-F%+JbXR&!PL&G5t}j@Ao)Ji%j8PI-b)k z&mKk!CFtk_;(Q+CDY9=XJ2so?7(2XJWAtl90~Pyoq2?qoKRuw?(vh?qG|cwX_CrE6 zM*!*d64aqyd|G`TidKs+PR*Y7N1?9idg`;pDEzJ^JtKWdv=OyI*}g?W-XX>jTWgUE z?>8BgAql7(gKVfSUx)nk2*?8av9hMv;16MSiHvLtUfH{5Ujk4T6%NhrN29(d?-^=i z96uJhO%F4Ktf&mcUup-o?J#Y@eHR3wD3{)=E}<+?f#CFfHM7y42PYk^T$bS3XFnZ* ztG(OpS@J9pLg{xl3GGsLtHX$6aRgXrxVjt@_ldaaxs3=jwL-9m#m0hFt!5nVpb&%S z5%;3hQ1(!%OImC84H#wC7&P5W(|^O1`>*`JMafR=VdU3!F z6B6w}j>D(^lJ^!ATelHF?TQTA?eSjFgj_j^U+jgMDaL!=>>5-YjU@m3j)UAt@jF7T zZv7W^En|YHYJ=j@P)ZjV(|Lh0`H!`Lo^*4!(ruT-*XKtGs7j2#`=GyC zPFxldx9a?W0z+*zpk!VlEXg0)h*9w7HhBGQYtr;si&lIU5qGT0?HO{GUd& z({iO7eCE#01JbNPOwwnCSpw^U2aLDPw~*;CyGli(;p;x*XED2fc^e?4PM%JNJHK!p z{Jhc(tG#RGl7r7P%tQ(qZK?r_X`1+u7=pkDfp2DUW^hA%tJUhOb%lhCk|GDK*px!) z;>hb9KK?WP1sXpLN6mX&g!FbN$uL@Ae9X+rcR3Ekdup79r;RzGY*+=|mP4$2#P5fC zlFU=6k!iWD8CV6C$e)ED(W@3+oQ7u^7A9HfLE|5=oZM}ZON*- z4$hnX{A)y|z5RvY#40`?i^}yI*pMuJb?*wSNOC;*HVeVHyA*c};i7CD2b(#e?R?z7hQ1b|1~)wakuTly zN-KLP{AsIFU0LE z%$u1t=@H7&{#sXW-LQN@KTNBlH>-f}46XbE?^eo9kg=1Z2US`6?fm-@iH*JJ{ul^f zN~T_LPGh95Jk8Rb{W$oLOu7e-BryCF3?_X&D_~FaH6Kw^W9ROb(aOZTi0{V0qh z$0PjX*V}qkRlJ2(CL~AYNtV!zhtEQkfnZpZOlP^v(;7(_FMRZ#Wp*S<)gRrVZ`mt? z0)ZvJ6jTUf#-BCcOYr{jPw%PTalB`45{${DCMQJ8KDR*IV>95yNBYT+G+EXXm+pnL zo23M6j>Z>RlohHoa+ktA_?%?G)!Na`L;bBUPlSg5n)7Jd)TrNTRPYVle87-b2`vm{ zWf6xqhAEsuY(kP&|5kyBY9U7|JluKl^ImjVaQLSvP}@R|Kvmy!0^t!lI;}k2kG*Qu zf>hrJyMMHKIQvQxuSbA`!3|nWw zj>D5^*gbqx_z(s1nq9u&Z6VV&GWE|v=F~;SPm8g@Zd-gG>|@ceGC#UL`kvCR)B&1{ zC|BUQTo~dxp-V4aqzgv+&J^eq0QG=5q5F0Ms}qdUimmXloXHz)o(bn>qId!z(5+s3 z?YZ)E{jSDg2l_?1!Awv;PK*&UhTS;O3>I-Cmxa?B#jJ>LZk*Zx&yXNirk>zTLDM84 zF~l}j(#Kw@MgEP=h5^23+yHEvZgd;g);tg(jps3gn*41MyHQU`C{J%M(0)bBN|o4N z#BzJY@q^s*EI#d1wj1waE-9om6)-&csR!loiR1bUpj6^VyAg+1;R%oI`i1t@?_KCm z4>p*NxQ11-PNTJ>&HFNJE0LzhO~goGrKcgw9HR zAQESsJ&L*qR$eL?Ss0*)XC-?qtpZ5umGTF36W?8KBJNl=d+_o<#vuq}efRQ4>7~Tr zZmorCMh{^jVi~zHaK$|N-Mu~WV?=CTL0_wWHjQQZ%H_!~3^q#X03?)^eZ=JA=eV+< zHS|bVln&1yfZ%Ta$YA;U4)Yw0_ArE7{E(p zRV>WfcllKSfu0{12^BX|(_k&-F+=3(yEDekTKn%^BThtRlif<>5vlIO>z28!@Jz5j`Tf-iEcAKeYjX2bhmr8b*epMcZ8LABer+^)9Hul%D zAExnCcI0lZOaoWx=-6;`Cdmu+vz-r}VxeeFgQ&}a^COmqFv#N@%KMk+XaHE14UTlg z10`{Tlyg8-}vj~{&w zpf!M~G!`G=iCox1USVR}$_nZhRY{zK8e2+LWftO2p5Q}t)l)nfDOOE7J!|)VZ49{b z&9kOnw0&#)Rw^X%2){gkLKd8s$ujF?miD@t+Rp+?V|Mb!%zwLX%ZKnTu?#nk(YQ+$ z5b?Py5vp&Z%9fxM%6eDi#FNEKlak?_5)5) zRL(}PI)sFh#fi(F5d0XB8(1k&%dev<|2=_oz-)#L$0#L1Ba8VZWW>gfZD2G|x8~B= z>rYFH_C{XwoPKNe4+c_@sHrSTRhnan8X`$1qd>Ti5dSscT&UTkZZ9XA&l?}^CsIpx zHCl(kIB~ba8$Ir(V6mve*q3bSj_kP_3~dx{QqvEgarZ8}*!XMk%zqB2xD;AmDpRmFnL$~p`0My|C?J?FUW2;K*4 z?FZswA!eJR^~@L(bkw}&v8wLmOB)bQfz%;7^%1x(a0E>)mzn%1k?wSr71m7-DXM$t zJv!-Lp!}qe+dzoJj%Iom`*2Iqi8TT4&Gz#WnyDxHM~}8> zDPpiOVV<7;(*#Qza5dlQ5V^fMtQfE87h4qTh1T4RP?UBYOEL{q%1;QLniT0OjGDk7 zgsuN*-E)&;7I!_NGRIYH$gNx+TJ70^u(^@+XX28YWN;R5xENvgEXNK>WP=8y+l)LgYfx1ll5!VHy8mP2?M1KR>&Rx} zU};O#6V$GP=s%UIAOa6a2>!ZAeS)a!RCcR}yccpriWVyL;sy$G+>;KQ@Oq#;ygH*y zg+_05uvu-BcID}vcg-dZ#GlU1At- zMY|lLPuM%4L|JPE4K+uM$#&rO3A`>k)nXx}eHChm`R(nDkmVkD4umN@i?i{PNE~^E zd=1cEw;Ee=Ob%Ext&fC9g1`RFltN1Svw>B?m6&upPfy`T5)CZApC3j%{5W^y1a1X* zV=jj-3cVVfNi6Eq?7+4UHG2rywY z8$E;_8~Ip+4in+hW4pu>>Xcd$`%=c(DIS+mcn|NG>?etURk4ljpm7flH<=7l*zGK( z^wqG7$JI!pe?PkIpX4}~4quFVnTWwX!F5HX>ez2Xx?!MpXpsV&Sv>^ubDT|c#?TJQ zftHI#EIp`2trY{ibb_6ydvC}#|8$X4VilmGHhWb?n4k;34U?glvRTTJR28BV=%TTo z>&H?1d)=N6UTO3=({%fge^HoeKHM^dNtqpYHvLgYRRFugl}1=PFdckmup~)nbQ%!Y z@*{iP(t7WKu-1->H}M9*tFYuwm|sd=lSsWuZ0IdPa0V6FUHq*fg4*(P&7-heJx`bou0GHq+;Y^vXAn77;SX3$cixLtXNZab4G-oc$9hb>hbs&b z*2Bx~$-d^M<&LYjK_e9c!XsIw8Z*Mqo0NN&WqxgO=al3DKn_!~SD}by7Q`HA)C@*a zSe5YDcA;EP=l4!i`PARAW6M;qzsuKdDp~HuvACLNntV7i$@oU*B-BHc6gVB8XLSR2 zMt@!e8b&Pf3Myc8#Ucib5Kth^)OyRv3{FJF4fA!vfjwagEDcim2zp368>^BbMj?|n z6V4Bu=BjPhb^C&-S6$NePEnyRm&h*8Q-Ye~x>oFksV7FK-tjCg1xXKqEn;(iRcxuL zSvP9Nb-~d6=#*I36rWMSoOsu=1sEDih>D)Wg}Y=4OiSywabJJuprjC z8xpCKRa1zO>?35W@dz)!_pke44EApVexX25A1B<1(2;=@&a20@sx!yPKAt-DK;rio z4&FuN9?obb{#11%jq3JIu4y#<;Y zCR2vlpZMi=F8IiP!-&owVYl+KiBd%FA$&6bX#fvRLWpxo04nHOet!#Amrc&<&BuE# z;Pb|$bjs}eH0f@^Zd%s=Yjbw!J^&j-t@sQg4mt#CBM=FFG|hl#lrbNqaSV(M^(DCs(~ zJ5V84nRBPd5kve0U^DuXLO5{Jy9uFb=1Ox}Qey`(g!i{qRvqigiO)`D;e)I_GoleW zm~CR5GEG#$PQ;f68WI`>&`KW){X>c;Qf)5#uM4>t|l%*KXAlgEMPlt4No|`I7gaXQ~g7AEmX3)KEda@pD-xS ztU`OBuFu zi3*hF-`#gLv)ljZo_pQ>FR>tmp%qU%S$!%$giV*5FZ^Lsy2tM2nNJFG%}exYT!~bB z#2TP~`8}#WZ#8X4KV7e0yGNW^;aQPyxfGt*B}}dTC!`7CYTfw;V0-~XrB*g@6o;R} z=-{7tG{cRo#qeE$|4Gc)zPF^>#xJQy+J72x)Pu;FwnY1YZhU6@E3RI4*E0QBleRTe zk2GHPa;V0s$$kni>D>iWBeG##h<7ja8KY&PPNzLDb>LfXuL`!=dn< z`#g9?^-nf#;15(XwG=GZS0o|{SzJN9&6qcrgcXy5x8)%CqsCH_uF zF;p6O0|OrIwUVP5K=kOGfsHT54Ezu+)sSPL{@4qKl>B>@nNs~>&o z2hJ$p!10FK1=X8vG-D9<%Zfs;ybqy=>aqe(V{-$%sx+f277rU$E!V8Z@a51d%?Y$Br*>C+xDT;UL|nV*Q1yUnYY)ne7q!A2iPq z;w%W8u6lWdmjT(a1vSHV5LIk@n!3h0A=nE@2ZBi`4|{>C9H?lPAHhA2BdVkJ^w`R_ zAekqFso1{=bnXs)Yj3#3G`&H3xZ=7oeS#(nlK$!>2R2V_!>VEUa^LKAj*hZ!YY-qPQgIpfGH9!Kkh&?Ij}MJ?18#(JgtPO88!@aR@k&2s zL)Gvn9Y-BBB9Q+uPt{BG1=*G>h=wE@I%0%3`4KzID3UWMnygUe622dzT9v3HjZvLZ z62iQfTydG%_K;m7uwW46rDnz@&<^C_nvKzC%?Fb}$iVghyOg0Zu zJZhkfHM#}M19;UH83Vo+Ie!G}g%vyeaO32qIb#jE01}F~i@G%w z_fb_3La!+D{feH5#QHZiaE1Jx8f5hO#Q0og_B0EOepFa5C1HK!jjE-@Ht%m*ph1I5 z7&Q(F%zpPnE558nJw)5v@WaU9Ajy96~2Ej-g1Xc9c;8yhyJ?{d|X&W%c$)%kv5A+0y zpiACY7Bd33M*wW4N_aSNS4>vgKLj&G>iUDy>tzlmW~}3W*O#UHm34%1(a3NkK?eB4 z!P0?G#L8~UK4Zhl6`L1l?*9Hg|5_7ep%^|Dlt3M~%@NKx9zu`m@B00Z{2H=@xSMlG zAIRmX^84SSJ42)TW1x&Yo5OhVj_k09^DDq^FXnG)pa>lSvcHBjQCva(^*|bg=EBOGd{q27aHWh0B!* z!H-xrl&z+d4Fe#ciybc2y0&T8#aBBV&_;Ene^x9R^-?}1EU|(Ht*3{c z_NnI+M-sQ{``{(OKtdO>yH5mhBF4^*!(p$s3hH-nd`pqi=64Qv(aDeB=-`v;BMH6T zWJ4mE@pjYe40NRy%i^dN&=T`rLBOBH?`u%R;#J-cr+znUPuEe@6zE&<+DV9eTvCL< z&!?$sF~85B2YbGAlNLt9?oMgZ$Z_fHvdv1I6hMuo}F~6 zYhCbve?lhL15v9jrWWJP{w2ougeX3TP0nsM9o*a%8BZkshvY6a@$?ZAd4wm2ybz<9 zfMIo3D!(kmB%y~M@s`!b;r}hKN_I^zy`XSXDkWdrobFlEor@YR-*kpl z0Z%Hy7)OTO?1|RhN{KE%R|oh0imx(Z+nRWrUCPn1+20Kt=3%yJMckk+3MfH)?3pRi*_L;438A4eYY9vz zZ8c{*6u}7Zs`b>e%|kz#22e^DQFirUz_?tklRl?fLu(`{2bV;kjyHcml%YqGS+3R| zclIs-N)`eC^O?zzrlNA@K>B|_&2*(bJ6xR%9NDyNCS!A=K^`Xf(9h{BG^wXxF%>E& zH}PBQ?uR9j^Vd{eG8IqBcatjc@9lM%SmB=^v=?cU%4>G-h3IloDHB*{WTqthW*T$+ zk%up&3)*t@@#tI@okA*gJHJs2!zknZBMmYhnAC0CNNWMIF+U%Wu-s-kE%ARV=)Pr` z#xUpqyc(9_Jmx+wa5wUUPSxs!;FQVdS&@{}^fVAd-L%K=N;UqsOS=2q;?>^R;jlFh zgM@6F({waP6bTPr{o8FfAnWluQH0>F3(@qXZ9cP#31U_`w!NPNowjbjNW3R#*Q8Bs zf64ek>S6429d~Tz^RiMqUgF7SrQK}xz_l-XY>OnmX8C-7+|GXW0MtX(3MxO)NVk8S zvFv!w<>QuQWy zQ!h2aSVo@uT1Hr&Fs))rrL8Yhn@f*L2ZZ0e&Zw9mi*LlUwOZ`PUEJqfZpGD+b|cpe3Q(X;4AO-X$4CW}dyxG~XWsp3>$|@PUEYumxg=b7O#kT! zo{F;r1@y6VL@GfzKSrjE4tJc&StmFr0Jqf9l06Bho*jk?50$6Q4~AKrGAUcAQFp_={mfmM^XvG|KLG`2K8QX6z~l3n&mA}o zh*qj-^g4JwaI=HGZ1-nw%q;d|8za;1pyx_mEF_OgHtiw0l8^Zf zL*Qj`JoIa|O%Wn#O5N9st)k@Drg5LWfrgi#jE!VNDr(w3k2BLY_j}P<_d8Bsl<*#( zuADQv_H9`?f9XMDTxVL>?J(bts-y7=U1YwcrMa&f{L0w!hgbzNgj5_7AjX^r@CmlG zH8}I%Qz~dSQ0Wq+&CR%zqz*y~I5YLi7Hsc!IIa^l_=P{87JR0}o^N5Uu5cQUXHR3FmbdpsKK4a%$W*^Vj^@@H1(%5>%j-76fIj&qS8TXtWNGp>r}FlXU&GxAQVyr-n73lhSsjRv@5 z9OqZ>MA-oNwKl)tgZ%d|4L8*Wq-q-de6N{M-`V2+-ZDEb!>Bgs6U4H&!=Pk0p?Z; zDHv-0(9=LiGH;l+1>e;#Y%qvYU(cXf;j zgc}yD9Uia;@EX!J4prU$CmXV#TYr&2fTtmTac&NYtvq62c4$&ADecfF8&z_(;A*hY5b92(<6 zn-Si;)xCLka&mH3Ezk8Z1Ag?g%A|_>?GknX+YJl1(fLQFrN|0H`2V^<#gGQmXJcJOYJr7RpD zj|%lOLYPs55D1CSiz(Xo^?3d1q@~i0jhJBt-)`jKxrgA@X!653dQa*+$tQ&8r_a6^ z7^sL`+anmEh3mXPqm&(rqMDg_*5>JIWo`N1nZ^o@7%k=uuf8$dQM8AeT{i{*Bbf|n zLWQfMw74-zmVn2ZQrWJ9?=9n|ua0P#?}3>h!~=RnN(EO%)%dE8v* z!_U>7SWP5Ret{t;=oDAq1`qjp2(gN1H|dfc=w(8!yz02FIISfJ?z*P2 zT4bUBMhG2POs0?=tDrUvrQHeH&Z1A1+I1Ey3)O}sa6+qwXs{kP&eZ&FkhmHy2rU$N zzJXaN_yV=&$y||-%7!(c(7dL`^dzlXyrpbaXvih>IY}`p`_qhq2AK$NL4gr%lr7hL zb^0`yK8MhKj|f8zIO$?_$q(A3&=i1w%Z^a6aa%Tp4lS;j($yopFf)=RvAFs7Si5d1 z>hX5pq$1D+B`NumI)|jP6DBlZIGF)06uvSO-0_PrMWGNTs3nxd$M~1lTV_DfBUv|r zhiYZ>QOU6H<8+q9H0H+aXU6t($W&7uR#Jaa;(PE;JL9Eq=M7dGHAQEs-osGxY4h=E z^AWP_oCMNSP(_RSyDv`19SXuayJAyhra5o^ljcF;sGEu5dlc960Ca(^bMTHq+yjyU zKubOz(^i+?YVrLs1*V>oiQR^?ER)m60$P({nzZve2Q6X^%uJj_NX1uEMq86Je0~B? zhudN*_XUZ>#RGcrSFRzhHo?E{ZWl5UUD6!KDi7$*VAO8HP({L79#jCf_%TUH9kSHV zHG_pu()e<`f57(o>Q!;)NHB^w=Rw$oVOzm;NubdEuU*~E4k1-fGvDMzmELu~3pca@ zcPD(Tl#q>#3QFbma6zxE-j&VK7$WGTRT5--EAfu_Z4W; z3dld2Ak-Lb2>p-Y_m5ymd!}KtvP}_iq|w_yeuO>CUt?sI-^jsoyaWqYmCp*BL9f?- zX1XY)TOsD%B4XDM)o)lo`JBvKmvkYAs4nuW-`!W|0)^Uzhi_=NykC-Vc-4gu{Q!4c8ah~e>%OS&4u!R>iC+E z?9%`z9cEOD_mvRL?mD2A60Hn~&)c580(qObE*7^oG8qfMll)9Hfeu18FvgMJ2*Yc{Vt~Ty9C1fTwo&YQPM)R4TzgWKY|yj z4fgo=^F>J>UBk%7!-ii593|{D_1aS|)0UQ;J-sBeLoVfUR|D7Fz!W$0!~6ht-C+G& z9um+iwsk7v=*4@7BeVv!?6@Z!D=agbTY$55_0MmxAj=`nL7@i19OfAELYBCP@$@-~ zjQZ~*$+U8HL2}DGN8^!_`w!`_9OUrn>oBAsq0Qx9Umowq(zg83kE|9{E+Wa zv|=nGTiI{sBTCCuQ ztBny$WDy$G^aS%{hJmXGh2`(eTam5n z7iAh!0=%b6gwaW46HDr(+4G&YXUG752`MO<5LCUz^KjVp>bqp5@DB6)uBK^eMtM7IQACX(Ng8HhKJL9M`?npdfl5B?4EqP5+<^{#_&}yTvKLKi0@Ys9V7#)jNw}S*N!8R|!W)P2t8n zF8oXn=;v8y6_t;Toaoa4`sr(4+fGul|2`9C4zl$bCf>E_TS<5&S2$7S^f}K?;0#>J z3^RN$Uu#Ecy!bfHPQrojG2yKOit9K1*5X_^jm&3L#2slAM?9}r>wgFj=}6iH_dcSA z#Op#8r4@XNa7!xM;jXaOsJBL({ebY_6g21pe**)z2qQ8sp9K$iw_j|(r-Xt^vpX#FYu+&l5Tv7(#8pr|+q!8+#HmOjN>thUk+o0%B$ z-v1cFLU2!_|INv3lBPtd9Fa}%wKh7>*Xc=_I04EJyR&q2Hp;+CaN2b$b2ZdB>D%VL zI7vurW-bkuo{F)EqLa=h;A0hYsL3z{Y_aDXw{ClrF_BU!5;svvG-`%H&>rWI9dP1Z zzG+kk|Cv(~{da4qGws}9akI!?2M{!XzJ9<%8ZkV*CHSW0#En!#;CsK9p!e2v#o>Eu zF}1(7J+J5R95UTr4MBZG<^Z%C8Ap1ZRpNp`}SkmsqYVz2dN;9?rw!O7jm0ISh9sH#?UCBCOb%B$J)69*TozM5f7rAd z{8^~3dT9Xa-p>?Pu9QHNdg-gm+m6q@pA9=O_FHt^)Aj9X&}6=>%AfTRLYxOMuPi1Z zy=7hp9>Z5it)N^C_tIc>bnDpP)+O|+MV=s4Hoaszjuxd5aC~CQ_me`9Rso&s@c+0y zz)QesphKohrmv93Y0?!$l1BJvzcY^@rwoe_tJo)|>1GeMQ=)OVlTFU9&eFGM$LpR$ zu%T-4=cx}@$AR&B3v#+{k;3FSIPA5FIkbL)bE||ZQmx#J6=a^vwSc5USV|w zu8u=xQtZaur;qBjh84e2jXw9!zfXM&&3gT_Phqk{K1JJ>z2a`H0t!3BDbn~*iq;F` zKi&)D=9btAnG@eL!nfxEow&#%!*(8a7LQjpI)Oy!I)vN;QuLx$)Xw{HoWJSJ_TO^~ zA4_k8_Oku}UOczd^7tk|EOxE#pt?nW`#YU2X~Ui9lxZ6j=htrX)zwvbzK33R;+DFr zMWg5YKx*R0b6(YWgL7ThBY5jvIZ#TK*~5|JTvvbcsmFM8IxQh$9x!E5B%Ba1V}(hI zT||SYHz5jwT3_aXoj3OI*Fxuww8~Nl5b7$FrHRKWE&#%{4+LT?fkhal`gwUwf!m4B z)ee=WyCJC_|4vSkgr)qgR76MjVW=~C*H3cG_bTwW#KDn;CWIK*t#Uc+mN-j+CX&#z zE0+`}i@t$5zbZ`kqO~g1?2}#ryb%*$vW#=9DW=xm6%M?9I^7A4-gP)!TYp8+WNbXx za^v0P9&2r?b!=+?n$~Ggoz8htMWHX^6w*JTU_0LYDWJ*OoLQZ>Xd1_K8KRp-$U*igFlJcrq`+e z)An=*sy}Of%KRqBZ9loyH@|*f{uexSd6FnWY_I+yUcK4My@);xR;|K#9&zO+S@+R1 z#ePCyHM>I%W14814?&z~`?`4E>*8pA-Sv$;R1WOqot)tsBGh}`J0hZGXb6T$?>khI z4@^2eWn8YGHm`3NHvw2RbHcIQI5cJ?2lqNTA{Cfj1Nk^5WPt-EW&9zd~U} zuT{OJl-2$P39<6|SkHP2V3XNy(Vc0s;O1rUh=>t`9UV9c_^F;OiYvut%phk%l76!1 z;ZNGwzJH&2+=4faK3FxhkPKA-RLB8By?^p(plcWWQvCCs-i6ig2FilWD9W^-8E`L; za6j&BZ)j6twIu$N7vgTaO7JBUC;|}L(a_M)F~GmOqttT%TjQQ4NVQC!i-ClJ=?6Q` zb@p7n-5;S2+YKLJ2b2ljgbipWgTY!lAEJxw*66y2Y&(-z3JfubSuCq{{{CX#+j`Gj zNgkKu2wqsiub%+|6H!wC`s?4OH*KWe-5rTl^=R2v;)rzd zZfX#tuRZPaKc$kc-+qH&f9E`BW$1ahy>K3LH$mMJ6m9yQIo;xun>p?nk;$TDBG*MZ z(*mTMTifh0$96vV8w-8I+qw2&5C7c0B6=ka6=m536{+0O9T+^l&ZH0LeDhZ%^;BKx z4yT0UiU}#Yox1zN(2#pXwkU}nexD!b4x(t~k)MB5{n%xj?9}Z@dZZ-qbE&m{^pj_y zC9LQVu|8?0GD@~-fTl-HPVrH8k7Uq4^SQ*S{V8W(r<+neA@gjsPNFLx>Z6ZoAOrk` znf;=x`VGEAmiudzpktfhLD1NZ?c$n$dE z=VsV)u3}lyqbt{!9({n^dJceK3|WejBQJ7M2o{FYA+T;I=+d(mY#V*->DSXP&?5uF z^axdUtn#iP_$2|-XU7rCnOzAbbNaO`IAd+Q#<{TRh95#H8tV53XTvR9P*bJ!Znd{B zN}M?CmBH({iJVH$uXyQ<>EFUZ(i54`4L5KC@Gis4J1AknR<}b?62Tz4=Tr10mK^8d z&f?wpyBqkl9STvRV}$Ss^bh(54>kFlRU5O|doQZ6*hk8Kc6U`hu~9C^>q?j^q@tW6 z<3}oLI?fOBzK@Rax$6S4WV|j!5D;x%Oc!bxsc4rX$Ov7XwYo!%v|jWIOOzOH#69u> z36f?Ey8Ed4x!T?o6uAVg-qzn*v?!_kZd~>$PzN`zVWJP=l@(bR6mlEBKf$i!B!zEu zaTJySm9-kEy#iD~Ny=HGQ_u>d5}5mBOCgX!;|Uh^y#r=_9ij@)&Q zJF4!zayJRXGx6{fQ_V~GVxOvWQOdhxfc2j$(|8$Q#!JY|)y(Dm2L0`7>-n$f5x+t2 z=?;RJa}2D7-xa&!vq!uO!N%Z`A;!m}r{oO~ROaK|?4`+d+l<&9-sIA(s;WpQ|HBWV zGbXDynsQ)R`YZR{m0)#ao@%l`uSO+*j zSkg3$i+p_#xcrTU;Z{{)h0hh)^l(8h7w+x|S;OpA4B^OXu!!0Dv>ctfojfxkiLBDj z8geCIPn60;?fDBnjofE)jdnBl%tLo!rHNux7wgzQ;wtHc@7+YUj!lE57EDuA8o78W z3f5L}4P@~}OBBTky?p>xp1dtCUOTaL`ht)DaHGpV@OCKv!G<`D@EjY)Q&vi(ILtar zLalRmBRSd0qi!p)k?Q^N3Sh046%n~8+7-OcD7@@($fL#G?Uig1_d&{6W)U8VxYg~f|4GUI-F^Dpn{&^7Yrd+lrfO>b_K&XaNA_NOt+n?9f_kZ=9x{rU z|5zms^HC+XT@FF&H_8*iXDGZ=Oy9mtmm|=kVXWV-KQ{WPr>Jrq@}a&5sYy9^8fpFc zM@+;7zhJn^Y~Sy>gw-%B-YY?u=lb*U;9lH@BX_{!%3AUVEg7~B(XX(O`O0VBUFR~) zWWqk-OyGelm>|Aa!FMxM08+PibJg6<+WN5JQu^<4Lg}lHV3nC*O%cBajPj~G;u#8u zmFqZXgzereI8Qh^4+o?EyUujOXG3fupP8ANkOvC?4wg2Mrkbb6nCSL(sZ4sU~bQfVvlrKb6Kp2}X zQybh?X;5?I$4@`u+y}fdcya!$?5s$2D_fu%2H#Y;>;HNL=dCiq?k&}}#dFAHsowB& zqOQH~+piBD{GPR9Y^YlBujvij@<9D-6kQ>fVQb64 z0Xc$wCm$5{Fy^>QEkKxCDOBqnDWWLc_oQP=`U&Vy!n+G^E1{dvqYR-Kz|!mb=YW|; z4BRm%*Fc#02<7*M{q%7t$>^OF_{qlPT{Fhji0LJpP;eRgR2%)j3 zNaJMv$~*t>Fp{|-a+^nn>RdK1!ICfZKjXt0+p|A2$0Z&Dz+fUt`iuxdcrUs4x&y$PZ2)YW3;pwoBWHQOhVH5#Q3?ubb*yS>drE6)(Gj zA6LR0(AWgaEks1#^w$+Es8T=A`cf2jZ4rAX4nZDBP}OL{0YJ>b zpZ7!y!ugC<(wOKsyfZ+7qyLGB2?gCz>nGw0!lFHt)b~*Id5}TP?i9eWk2UP`V{^=A`L=qap%qpqd zZ5oA&r!qyZ@fN5|RLl3->of_9GPRN?$`=_mqIabhs+Z%)1?4WAwg|^<{{**iCGe0> zK`)M*HNOPi0ut`j@NP+_Tx$IkYlb>nT_(?oF{S z#C?|>DZsw=kDM%Cwk9Pw2Y~<3yZtwYEbbySb0{pWP=q7jHCueaVY&N_2Hk5-sH25i z2Df!OO__$ZE0D(?q131Ji5FQJ3M~>lif(=v;h#C7wXehfRas!?HdWhTwzhuA!fMG!1=vow?#U)ay2wfeVRk~744eNLsk|h*vmikeDraz z{sF$@#Wl`fY606{yDdHi@`l$bPsiw_QFE<*{Sc%3&LM30_*P4|z1iq%)bHKketWHfFK_v4lwd-oU@+IK zx{~8B>|m4H+zfTa%(oaw?#fo670D2#_1(NDYP~=WEX<{>G5n&8SrS|<(Eb|C*=0A- z+X*-@3}+8_5`O4(b;1FilW3Z>um)PFflPF5QlQXmkhATdusnHo=>CBoVi6&^_{JZ|pb3}1L-^onez(DstV=_0;tz4NJCwd8 zTBcQ~Z&0?9?tt*=JbWIVeO9aPVH>7R%nTp2-YuQ)n4m1|(>~RC2~%;Mk*wm|a8Ak2 zzZ(vobHnxB<3su=xcwViPcbG06+n%5h62CoI>Uh%)Y{HlISupXY#YO*Y7+Vi>-OH# z%K+|8A{)Egh^TAOHn~#W1ZXdy>tOAysyol>c?zf>Ela<}kbt zQ)~z!>qsZI9L>+WL5hF>A8A$iq^R+fJcDujWZ0VQ?%o?x?%c^<)YyW~)?Z(oJd6fEk17d-XZi z@95OsFgf^V9fAJs5BIeTUrETPaRRkS6Uc{SvS*p$*I_>?g3K}fl3`H<)-1{3KFdaf zYbaRtXjtYpqug+!7s@H5!NPVoySom$#PSTuDMIRlU z2)95HZfAp7#C85*|7l?%(n>dFgvR#k!IEfE`mTU3@{6*?)kDZE%0VH$>7-zb@bnD^ z8rFYACu8Z zXs)MGdRz7$kQQQ`q@mf{%6}ZGg?uYS5bB4H?+h5M7OlrV?Tnx2`fUj@Ka>ryvPsWZ z`;fj)oCR_E{YMG>&I+%3TKQGpjP2j{#kbG@8+lIuKgsjoQ}YmdHc!xQcnN{5a`+qc z?hgtG8+KV%vpbS8m9&W1G&lD203jW5k1HJ)F20VYapGWO2(noI;TxH5`2XS74Z=6M zU6#GZ6n$ZYCiQ^PWAbrj8_!?F=2_{lVVJS|!zj7}ofHCW8RWaFnfj`&`Ye8c z+Jle^W%nA$*Wx_^>L~jLykPcMfnVh8i3ff%UAIW1(qUJ36)#UC&vJhk0L z;$~O{xpiX&zkd@tUe1k4?F{idy3gH`x+8i7n2x0|m=bYHViR|kwEo*iC)9dO!?Fmy zI(sZrj6XhrWPy=!hKnsdisDdqK{n8^()?6Bjl%BTC1gqf?}_$?E>vaA>Ehn=T^11U zGGD^ok5&iL34v;rKN%{nGNsmM&#-M+rAdp2T({X?`Cq5g2=g2eI(jk+iPx`g_AeWK zCxZ83i~1fn3d2&%W|Px-z3Q*IIFUgYw;?4^w4e)7K*x)?p+_{-#V_A_Vk zUnC}!_)w9cmkGD&JjIp2uJeMM{4K$rXYanM(Cxw)yUXZfAHH}I&H=jU_r3jNq~lI2 zV4C;-Dn4@{-u%nnJz2x{qtFt>2H7QjRojNt!J}lO*#%*@RV^s4vup=dQ?wCymTgD9Bzxo@5poASg;paHcf1%Dy9irkXn7 zW8-IfJd_~MoUuAbt>+ z0?+sh@wYCI$5GfTW917wvcX`xMpMYm!0Sjh(IL?LTm8t3O56wJQ~zJ^!y3tPu3FDPK+YQj1_?x{A3|-C}Dr(b-Q`45%=<=zDJzsZ4}AP z4M5b?Y_+oBW^}y{Z0MM259GxqUlKSvqs&`=xWy5l2{z{z`-?j~%3N8IEAoLMzQc}6 zdpaPp^*or;kQ969@ijp9?Z+XP|CWrmLwUsE?Wx9UzEKbiVSWV3JMl=Lr#3}_n3R`a zjqed(Z(mRFu)ih#@yliO=ObQXJsbjx6a+ZbD888qiq3b=s#0~QC1L1DW`Uq8ud#5F zYtem)FtD9+A$1lsknJ*TLa^t99afC<^)2}GDTbcE6r127(^J%x>qglS)j@!RFb?;-k9mfKE+6e*7k z6=NV0qEjGb9hQ|gLUnFt^#W(j39rfHgo>O6x37+P&Y7el$Xx`7F#G$#7`%`@H4Vf^^9K;-g^NG{p>B%o<~5Gl zQfs@kXgd7E|DU`~PSzzeCt%wwC@m;-3 zN;W5F@Kj-8=-c%6OuK@q7xq*m2oE%i`0o>hsmHQDUqhq#=!reh{@-{l|Gib(uHLWy z&PWMfc51RTa;*j}2nrlI#AcvI?U$ZLL3Ei$Qbo=GZPoLO8}s&QF$W(}%yT}QlksnD z0YY(D_(6<8=I|BxA^zcDaICgUmvhRRvti%?KmmgG#{2&pi~fcA{x^X7|M?-o=a#NW z#|D)Ro{5+F4Cm!{*b>oo7o&?-_Q+=*Y$VIY_*MZ-{}mKJ{0kS)ghG(|pvb?0^PlFN zXyx9-YZ#`LiJ6p=zdTG|lz;@eKa?x*1GBzK?)LJjX{3I?+F;7Bi-r56j(;bHTxlxa zM&7^7Wq(=VCT90$QK+iS-y87yjwx22pwgWRht{w8?NOfV4qn3utqD~cPwT$@BNbe+ zYPOL7GRV+$%2<{tEpPuw@oR~bFTX7zag0bLb!vLf)-zl)b`nx)<>Q~pR2SLRiA3NX z0yyM2D%|4UPkOfqCl?;|70u#Q3Z=D3EqysQ13!??-QTE8UshxW?Ga$Uxi2C^E;v(q zk8I1>rTT%k=E4;rlS+sb&LWUMUDxMaqLD8em zC($YI@{$z>Pky3a(pHEGT zsteS2@RfI34(Zzn%M}i{)~P$@jyz_4P4XDEo^Jy+u;$>ceh!w4=dk9R1Tw$r8);5N* zcfEtM>R&2Wgo*k^h5J75%b8t3_E;6yZ%$NZ)ma464VW5ZJc;nj!>QfhUUg_YtYM8` z8Eqa#R;n~K2G39t>drR)#0=?2$aPtO4zxe|AsWU%XKQtGZ5xZ~KcWr3jZXoMe^9xC zQCDVPWPmFxwl$L^ePSt0+G}9h-g+dZBjUq zH8%AWI6UCb0$4*FYsLuU+AYGrpWJGey_tQ~NH7}?Me^;9_W`Nk{VL62mW^{)ikRHB zRd&~wD(nenv})}T7k%|EH7-Yq`PxC(PtN(B#ch=+Ejn)WW*Np-h?;NYlqbh! z2w~sfA(0|oeW`}E_w2m(7sjEi6u^i)uA)cMIv#hjds&}BgZwqt4tJGVUPq=9FbMN% z;fA-SY@oUWUF{;Wwxe3#)NYzI6vwfj?`F_}&g`Emof0sO5=|mJ1aSsvlFvB&&I76+ zOLBrS1TorXxvT%$ZY^^^1D0Cy3}qa`!r0THYkOBXiTdVMrE3_8#5lToPLgv?f0c!@ zcsY}7HD)}L9Vi4y+o76l2hA!?g12oWCDJL%JCiX6o=9vsi-diE{*R4DldJ?>X}Y)U zU*Z!#7tL`d;iFhGB={S7KzqckGqQp?CAk`%C<|$+n?1aR^V_3MGBnuX`c{mb&^#js zKY+RYR?QX}7~Z>b6o5%mPwoWop4{gACV18J7RTAZC-5)sL!PCd7<*#HbaDl0Q-nk5kNVH*PU~NWI zyM}Brb(3UCJqV%ht3p4-o+)k0nqnNwvmbdJKU83t1BJ0zWiStsR^ovlq9=botERwC zl6*)}M<}*yX-D(_Sy&Pam(;pdwFWcwwZmhq_^o`wTD`z0H?6A5LKS%Yj3in_V_CM; z*#aV?wQ4%XR&w$(aYOmS#$hliCTS$}ix7jlG%h#&?!0Y6m>PvXZ)u5*@PjM*H_?5~ zfQYyWN8p*q(O{S%bY#MUx$J}!CpX@aDXuld4n`v~V6X8h?2xGxDydXm1L4nq{*811 z=ts{carcWx>h!;VQ!=JdoLVlR(c}L`_gQyEuB%_U==@ODZNB=rL&cQ!Q8f@mum?3b7oqxwSkMN8<2(fJ%~$qq)26%-Zo7&n(yhiMhUW1I2i+ zW}S6@nB02&%z_;iRL{db1u^mXspGfNjLq*4!4v6oUb#)hPqPG6YT zMA96zc>fVjLtU-hL~O1LR~`0;Mx zn;t9;`JHd&GMgr<=hOy?7^k)v$n9Eu{XJF-Y6t=e)EQT?59vgGT9IKJr{A z^V!~jIQe_R<~jrf{fTE?WYZ|{J>mC4Zn3wJt}(;goDExQSA?UO6ar`N;k2{b!I@x> zVB>&c#jDrH$n#BguW+9q%RcH)a$;4Fjs_rVX|hMfVDpvo$wNTUGED64j`!-K;tw^=MYuC$8!pLytgtDZ##0A=qo>S2|2@n<-W9+ zkSWprZbEkU1pqzu<}Uc%S{AW0JgEkzaeb?2L2oV!yw-0~l^D7>nt4{_PTp`?@@cbR z*T_@lx)Z8|(5=dA5-n@EI{&=kPw~Eqxtm)gME?;aVqgvc0l5tzeYoDXi?RCHui@T( zmKQ{&dk3TzT{jab=vOPZR_ieuTRyAc)rQ1!4+W4zrAvFrI7;Vk4mq*AHiHfn29L@G z%kLs@nA%`D80X*y?MJ)(eE|Pzrpn2}AZr%R@Zk2Ui5__3O^a|KL1hU1j`-9820{~j zuBLI*6^w!Qj@-M0C*t)VZ`5h@Rd;M-$Gu>@!=BKEECcbl5UncSiU@xpLxs#U)}W$? z!S>gN4hJ()Fj~FISyQj-q^M|yjA;!i&g{>9gBZuwop7C8*xo3DqCug_hM|LLf$m3g zSJ(H+*nIszLGs4Wy(7DL3gv)%iEnG5GhnW}{59yMboTdhF37Io`aF$cm7CdVR`fmr znhzDygUWJ63mZCZM$tdh?=K8KCAgQ;jM@W$G*6?yQ?&?Vj>gHsrUfR?9str7k(Un? z>LAio;7#3GB&zspiMWyC@AGfgjqEYHDwf^yaDN~#+yrY26!DMEWh3;96&>mw$cm3K z0Qrn-OuANfkGUrJT+@Y2Nsiq*o<)z}28Me~jdxVyXx2qGnpn?#kOr0VeZ3V=0! zpQSb%yZFpuFJa(H+qXWrN`M0^NOu(OFmzuKu0!>|wh2>T;Oy3)zt|whXpH|N)p#+K zHC?=c6l-t-fAG2n%)cU2Wb3O&zhl@_AqLIo2wqj&@sZLVkaH;(|ZaPDR5K5cib zKpV)3&=Y6!A`zQb@pV0Hp(Ox^#POPNOFTt3rWEOX&>jQu1xoLHJRUp(nZ8cnXUTiE zesm0(Ow!@h@gg8z-oKH^HF>Y=^yQ*6efoBBa;$?4F9M?&!;9ivD5oh6@y*$R{Ru*s z{mZ-8%cZS8u{m9eNf&y(rp{DQi!fC(Vbi_gBc!FTtofY0UJ1(~mz8puQMgls_) zKbZ}`@M(a&c}juu8~~9M4zN_Zm2u7i%wtk#%0PnD9}s!#Pvk|MOrPBYtbsE3h#yDh znG|V#v=ruA#}-f7ce}IpUBY#ib{EW+)L+iCri;9@U#+U1P6L{6N7>t41NrP#+y~RH ztUE7X@o`@m5eA3nU9!|N{Sw2EE?Z4O&tjWqtE}GR{pNZ$S`|NY$Z^ZVd`x1VfOfvN z3_iPL7Yu7>LKV%P!QNc&Cr1)06rBn`$JTGWyH>WJ9vl4Cz9uwz`lRk=#hMp(8)Ys?&{^l&U%y6-(*i1&3T{O+j&!}K}M*K@FcIpLeG^C^F$6KJSJlmEiigNt&Qvdp^1k3xuO|K5AKa<{NDi z;b)1bGp0VgFB0?1tBbpk=nw@~{6^wSmSCH1qvz;;(Pk8j|D=Q%)+iQ zUMrBDXr^zQC|+3)&Y)|fTfX1F!#|lJ#bFvCC!9gKx#??*_wlT|IiuNl#r`euTi^nt z$D@s)>BYxwCO`;(r+IAkwq-x>t4h`$d3^Zx)d=)8Ob6sjK1Vs-8|-5zPU7YkG(d{e z7rFIyy}jGd*iG+zjHz^NF=<)XRtyKgC+j81G z)}7~>KX&!3o@_-4Pqq46v>zfOB=m)!0GF_O>S zRh?a$SzHPd+8;UP{upZE#A#V$J>1Y?SWQj5>oz*b$}@xR63iBGlz4i}QpI_Dz<(XZ z^6N}JrQg!w6(q50kpnt&ySz9Y0cOPWpGue*EF-PttUk}o|Jo4o)OzXR+8?awZoTHZ zKQ#~tnT0gs=}$c%!fsQd5*V^nf>>Yjv7^`L0Yr@Lh&I3b_59Gg6H8(-K=Qd-P4QQ%C6Cu`nij-<)V@M)4Lhb<-3@d z%ap29iIJ9x+b8%&dq}OBMnC7(`_S!6gQyyWbh>$ZfBS?jG;`X>>1=eRp3KkBrA207 zdF`JSZ~KxgVBMbck}c>hvY}deZV!2#I>GEfye5=Q@e#H;0dk5Tx^3Bmt%Va8L|r{g znr06H&7vaDzA+D9RW#e$Y04&Z@DBi#)&e~{|FDkzO6Cg>h>);nkma7;_6m3F8@Dvj zGWjh|l?l*e=SGp%R6^5Z{e1; zgr_Nk$@b+n0t9`2Bp=%p) z|LYFCMqOK+ttU-xJJF~_%Z6|Hoa~>zL_Mhr&H3DK&vWHfFb}_`yeSEC?}!@W@>*&= z!#;o25}TVvt5qI+mGf4&G7A`PxCu7+WS9~PfpS^t{B4X0L<&Zh7NHD1;Px84`TGxo{E6Og_(kke)XP`?~a8&?Md~ z&L2{7^0*6oAeQuA5Z{>v#!F$fO)oCVss?0N<+Vbxtz+8VcENDm3au#hPFC@x_WocK zpN2V#vwYy$+R(1B!}a1&Ow-kk9i92B3ISo*8g<>=6#3sC2d4L z18Y~kn7v8Xw~^4DFa)Ut+??7xe*0V8XuVc=GSnZg{lu8;h7duUPandO6`#Xfy=4zP zlj;Lk69A_V+_wRziWv{!C-|TIn$5cbC(2TViXdf%ygNt=uSnA)kbU--j|L^be$9#( zqVS6C`#cSOXT3ifm$4c3G2;gEYPUP@j~_0G8f)8~*h7118~&*9_Rj0ROd@4bnBwzw z_MCDu#WL_J;;hl|N~r$Xh3IDwfbQLUL`n%@@fRpVWR9o|Sv!eRUc^_5$9yz*5$^2y zh*p>X6jJ?rc>s42m+||qi-=nbjGcUbgHWUg+}XY&?mpe*yJ^pB`%aDbuDN$m+{bzm z%T(ZZkX-MxtIv4nz(w#YM8sR~VO2F9+vbBe1(>MNfBM~uU$7g(tHu);Ism;+0SMLJ z1W)#8J1EySeey$kr?1R{rXeox5J0@6;M#oF4o`RMwOPclx2U=_fWNq#(yc8vXI%q= zO5aTPcG<7njmK{@d+L4{DZeGw65xF9;;sdH@~}pCYR3~q z*16QI)gdAuwTE~mVM5-|K+LRP)_RJ{m0BSpKcfBAnxM&K;W=PulD%@!?>MU3D_S|r zu3=8Vs#@Pl=&H-wQQLnWHrjnK&`{?{26~2)EIRA}l*t5>hqjlrO zWAE63Ed9qT^cR_XJ_I*}_M5itxr$KT*MLE;jtSy05ESuV%PIV2>cA)hNA4TY$vI?? z*o?S>d+;%C(C=jKn}XdDI&Lg4Vk>%W(zP0>vGcV{@uA|DLfJ+vS58TD-q`VlN*qBp zs3Kzd3V2^jx!koAe7WYIKQd=Fu&!C$IeQ8ROT>X@e3aV2IrMnZb%67=a4975fst^({q_=&KO&uOp{;e&Lvd3X6wwPQ= z9YvcZ6=z{>|M~hoYOZ9rGdsh(;#xV#oP=l-tr!#axw!K{(r`bH#X80zHC%-mcHOxg z*x?)q;S|`*x)KqJ3S&T z3kS)Pb0WU531qhSqA7%nu5u4P8g0{H#=YQg^&P9?aQ9*S<)lG%;8OvHPGAES=y%8S}`)3d0A*rw$c5S70)rKKr>6yBf@ve8@ zYVK?r#aL_h4jGVQ#Tg?%#9B*lnxpCKtUI+43OC$db?gbT|KJX8I~+si#o|MSG4^$Q z;e{PTPNJ99&r_qtm5U6ASlIrpr?DbKJVFc5RtPP^6lrh)5AWajH~LUYq1m=%HwubU zSaci44>-~OTlqfBEy#- zVwJgs{Hfyd(Emk`dt6{~64}|gi?mR%q+ensPchdBh2_$Fx-+{TlvCQr%d_PyE z%lTdp`~h+Wr@;iYtWS_3Pe)|}rlc=H9~N-_Gw~sM0utUJ9IW*<3fM??xXoG+dZJXY zTmSGHW+%s%s|D&s#k(}C+6U=z6rR*4w6;C{>EO2EpzD_s5Q=gbo=yHf8Tzq9-x=ng zRaW~qk*(Jvc4jPArH^ur0u#zNo+bmY-Xc6z+ze=eLch8faCUWV9ctre;t42J814zevCeY;7kB!WR1Zp7A}i*4dBZcLo{s)#E6xl>Z#SjejlmPccZw zgd282yUTEGU0iiMCbKIJ$OhvFeqDDLNy@c|E%Pm1-hzXWUY?|SYv*_VvzcRm zzDV#J=?m{|)5tL9bRf;os&D)cB&?(8{=_8_ZPd0yUMPso>${_i8K*8YZl|y5iKFxe zx+!jFZoXT3^-nsTX6MJ4*Yg1Fy^D7H38yKd)QXAmG0V65f^aAsHkNH4bI5eeZF;t5 zfK{vuB(~B5h7|NUnyS7p#GihF6RAy2r;`0K!1zN8EDN9Jx!+Es?&WKH*UX}wd``?1 zB~&R__rt7-sRC_~5C7JZ>-d7vMr8z*W&%y+diJ1Ls6g`Li?Cq_p4r{W2q8uuQZbJ7 zr0F~O8IMDCB+EEgOvIGzLi{@s1@UMqucOD}%xL3`%BJmzuW#pRexrHz-CC{IhMuDT z;_{^fJn3km1Y_!*-pI$!7*bWk>3xyAU{KM|`;Sq860jp(gQ^BZln1i&-Slp9db1ncP9@+fXoDF_E{aprjwQCvt`LMTS2Nu0b%S;Ar zOE@o{?=o#jOE|6D1gYzvPp&!f*z$Ks4%EV3NJQUa8g@_*2p7W}Uk>5P!asFwv(ac9 zMrF^^4jA8J!{#w4#RbwUj6C?60m^Y*sqGp3fRGNk3(^o{)D&NovCQ@EHILnn^hGwY z!Z(Ala_{5diAs_vy)%Dd#FhT*1tLg5kfuyN74|~LND)Fg7H+QNxJO)nwu=dApN3Ak zxLz*)>`~}IMbc3*t8^;>u|X&7!es6buHGwsln`2o)>fpQqkRd554s^{B&qf znd9<31#65jwXiR{2`d)i`nrvcO<|$?Rq~VCvWJ6OU1NIXZWP=N-U3IAHO_&R8(MYe7++%_XVO@sG>uuJe7Id<5$8 zn2HvCSiSgn*XwaUzf&;ciX)+76ooCK%m?k$h@T%Q*_X__rYekK1gIVboDuILSKPKh znaMUcOjnX^b}kqK9T?O^tw&cWkzAejBd}skph%fH1=h7#@O-;GDqFaSHTK>YCThV}t)_@>7+_!dDKL*zhrG|E8j154> zM;RrwGZ?WC`px8zk3P1hLQudnI3PDXAtFf03_PG72X+s}*HeGpd=c2b8@%RbEB?fE zi2|Da^ocdyEl-NeWv18C`}*M4#^c%T3`XFGJZ?f!?KqCTUH(B>ENV%T)w1+^S{qUt zotAVgN+T`#5ye&S&i3?-1^pUeC>@zxP6|errz>9hLW0rvc%HZ19!JnTs!(c~7Nt7Z z94I#P>h4+5zeQ}l4gFJ>_-WFXtir4XPC+zS#F$9<1yD(dK^M?^CN{ZAZ%QO*31ywyU>Ghp`0>d=9XuLz4vsl z6%*|Y<2HIUOAoJ_OFJ=O$d z%Vk%7h??N}q`5Q;+m;P&%+iaZeL>OK_^DQ>vG3g9+|A9tF?9_<@SYhKt{vrxe0B?F zwMb~h;PW~rx%kx2+7-9*^3=kOxe-ASizwP1Dt3{!f_kSp>*@WpD!VHNR5EFe%k-A! zrJF&FJ;OCw!Y-dkl0@+37nd4*bLUUd=MrOI_@zv} z@rF@2M!WQLT2>%$3yC%lX*_9@C1mG!t9F??um%DY- zy_!R!PwV5CpYIA6OeYQcRS46*uUryi5E(Z{F4l3BW_Ma`*d1w0ZNZL`F^Et4y(`vX zM@v(gSI0;{K1&~kJv~fwxbNLZn735j+ybj(rxeEo+{To2Z2^rV?B_TLaErM&FK2V6 ze}PM6l#_IIoTNVTS>R*_9eQ~0IgFyqdONfzT1OdrD1R|#JG!y>_@2*p!`ZxmKyYg* zN3wP1<8jhCVdToGk<0Vhd6egE$K{^cx^Hc?fby6-yg5jq7pt>Zkk=~fw;a8!JZ zef*P->iz{?`jQk`E~hLF#sk(p3$?u~{uEHq;q(A1b(JiI_`?~jklp+M!(mt{PVE== zk`crG$UWC%P#RTL3@Re;JFlucYoSqtd18bJTpd$0_7~F#tWRDlsfGsa=v$mNf(t`npltcL}qkz67VptZeZtdbUO4 zhMsmi@0H^=4JG8@ww$9C%8FRfLDD|pEMXx zKK$`ALs<*2%wqX+hxgD`xGZq;jnp{Vlex{EzKfv5yq>o^E5dMm6Q+C(aL3f%fmNx` zST^sA#U7!`)V=`eJK+A%>sPc{7<=)Q~=O4aFbKmyVhyuTHm1$pSi)-sSsd zbn!k5^u39x?G!DdY|1g~+LV-Q(u6pZwN;9@C&7*f zje}LaH5(t+!1rMjUo#pq1!*4N$itxwTu7cy5cUW8!ecz!?Nn`QCtB#5C?q(G8BNFR zA{y~r`E!5A%fvtbOq<%c*TL~n6O;+0arJ{%Sr7=>JIw9=NrO~Ro@B;5`Sv4S+>Vx}6Pszv7hq#I1)4 z)CFF2CHGS8pEVBacdPap2F69&@6-Kqg7$z6Ol}qWw)@h)G*L4|C@Ixer?9g``h`mt znHY8fbb1n^Hmp#EUOqFYTeKJGGYaEyYs zB8~__*-%P%8>`Ae?+cg@SS zQa%$_geuF1@TNm#2ZtZH~S8c1SWZ8X~DO4ps=_379gO|tKg*? zwmE! zOWm=6+6!~VgmM(|G!ga~6c;a$T>Yluw-M&NW%}2)&tSC4JTInUtB*Vnpc_f9gqPKv z(vqA;EJvi)0Vg4YD{+lvt^9^>Mc7gD3b>1nm!`MT;XmnwVhxkXo1yV*CdOFlbtIZd z@zQ5zbgkVyHO}MSd$l(0Q^n@(rVP89)n|I^6k3-~zpG{$Hhh86b&eTko+mE5cq;eP z(A(b}Nlg4~pqf$;N9ydiRSgvv7)-tu1=w4-^1B?lBUkGQzWxEFAP@xHxq-^JTQ7yDAl#+pmg?DktAd{^Z$(M?nrF|*;0 z_F#Flso|Z zk$F6XABEC}>sgHqxFa$hJpyW`K3@sA1SK6BgzLGp3v%#jHTx6pKbX`N5;4|1f~sH{ z&+^DYa9jS3f(nhP2;We=vDFB(F?)Rl5ecQuf9F3D3!-pT{n~;aS8tBSX~OTlGSezs zfVPo7jp;(YO2l!f>fw~J-XyTh=|lexjfi`Kuw?`^|3DF;tj<%LUcUY)thqbU#%YsnzLV4r{$N|l(Phalms?|Np__m0qZV%n_X$h_2uJM7BE1}3do zYst(Q&SG;3WxITZ(dN%qnL%vscuT>{IH8-tQkxwpelKyE`L*BTnd;dh%G69JuO+Ws z&mG+3jP7d4ei#GfrWdjr+*{dPjKU;j3A)Mx0zk`p zX@!cOfp1b=zI||tC*k>E^mF6OjH5GKO%#r?d|nJZ=PJb5tT4v^Rt$BsR^Nf{=1x>a zR)mGp3zWDRmQ>kAXS=NvZ?+D=HyhGzBw@<+$A=?@S7;|!%|3@&#}}4wC;7yOl!E+z z6A&aLgy(^)AE5&M#S)c+Squ??V8ddS$5$ZAI>NXh~JHgK2GZ+V*yl5&4 zSmgA;>g=rMeh$?g&C2k+TV>X^WTsU(5sDY}m}R^L0j*BMvP(ydCGyC)OBRr!gYdfX z74!o0zy=55^i@xKYr=~0B15FDT_h~*vHbUqW=ExKR}D?-!D@i;$B%TqzO1sjmR}-9 zC>y1X#wZ^x+#awOS{*eLb>j*o@Nzn(5E<-O-i)Xm(+vy`nu-2|Tlb>&=X3(8`-)P1 zE2J9fh}sFC8`xm|{;{8baEfSN2i)_&0Ixt$zuFJep{)(i0vcE`trrTSW)2sSS$Oy~ z2BQ`A41*3ioO80Y+KNmW@_*Qnjp)opeoyAF2c99kR%&ov6;-iq+rq%0Fd3uS*?jR` zn4GZ9k&(GT&aKPrL^`6%H&ulQAsX*8j~dGW!o`S6_(>42!e~j&(8e*~r@F}Q8ukRp z5TOp?AgPYFA@R+P0$&t?cXoly8)S@6c6V!T7sH!X%d&=7(amPC{GZVqLC)vJtA@)FBBkg@J`4&=!aq4>N>`BC4Mygyr|90 zmnO@y8dx*hxCcH5enEsFcGuBB0ezsOIZi{`ll9TzDIW$=NZwt8@P1KdN{GMA=oY3S zA`j$HvC7@%+bmD%u%SGJUKJ(L0I_{Kb5&PzcfF>dkC<5yC1Darvx*Gax~h$l059NFizy^j*fOztO~MDSRnu> z=pjTj$hkMjw`6z)12~ksV3VifC+IOo#`JY?VOSFiQJfsbaz|(8*l*L1TX_CK0wpQ4 zsi}ap`bo0-&I20KaF>!|zw6l$o)^=tk;fjy3+CNqG+m%n85|*PP!=1S1qP&Rx?_v0 zqjR9hSS4>zJFcW9^k)v3K|I(b)4}a0h3w~*BxhbYqp?xs)Qzx&$zdiPNL@iT;lsP-e?@NkF*5!Aw9b?UxVX@CmTn}39{tiv9CF8M7f;qWH5}* z5j{_{34VUV+zOw`Cdh|kxP<0iWjHBJD#4-_8vM$WxkLJ&1_ZrTF{Vl9q5GPzzNZmR zP0DsxG|aF-1T#F&^e#)Us%%ZY)aiwfG;KtxKZ;N3-s9vH+PK^?!rRdrCn|!@>>~0! z_rp20y2`h7eri-ix(<4b2JmfJz_;WSB&-g&{kjk$5)#~?h)Gjq&_Y##@uNh~2h@JL z3kD-%QEoL;1?kM_DW-dfH!h1KfHTsKZ7umDbOtt^n^qEG6u>y~@Oe1~d5i`d^#Bt< zDsH)l^um0N<)dwV@W^CktmIknX+uX?JXlz_4HOr%V|WU?^oZjnt%FEuX;EAo-*RF6 zbl|rZb(IPwO{SHsupE31hQZ6zN6D7;JmWgE@tmv-QcKPtVjdsR$f^gDhzUaQS{c(* z7C?u3udGtGQat7u>S1q&ja-Nn09a#;sLFEa!LSWyw0?!roSsy+yWVYo1*F2vkq0eF zE8mDb2QRohKU<|5FEFk*rXMf@-wzF5z~gn`7pNfw&It&NL>9mcI0VtP+R9fty}?lY z2fX13OmOI9k5RZWSm4SD-3eacOi=;;j{KT@(qk867JxCAhcmlumz(%L-)-0RjT>Fu zTt-mA5nix&JC3v8fTOo*x|MMlh!uKbe!S<5o>~v#qY~i@VL1G-X!}ctMXf$%}bJu4+gQ zHvLY5;J4e&^*Y<6aIe1v2>Wt)0WBS2=q;1zd>OyFSez{q-*av^+1uOQ&+j*zw5(h8 z6uf}?WHDPT=d0CxHJgzw>#sNK`^`Q5R8k4`z}n-f5O}o2o&NRY{J)S}NXsf2H@o$3 z>GoYst}NGOU^^)y8)bR=m)YVq=@~@1$#$U?K3dIIKhU>m)lWBXv)%iAd&S`k7}T`v zg~43n6-=CxL|J<10Zdq=U4VA3M)g(@=BhF>j0!d*r~z~^8D8h#{c9MXa-bfLHyuEC zMCK{k@f}$D@b2I(&}$eUjbs4&oXEiW$!^Kqhu!Wi*&J*=D3|jER%d^s`y!*6?BjI% zzOFNeaS-i7(`nheBO6-#JjkrB$YW`kuF2VB5v}fIu!g~`ZVEPYH+gzd=>{S2 z0!|@;qY}>Pt~pBF6y=6ttXI?SurBRVw-KV0+2y#f@5MO!>td(C`>Se+B(fsQW_1rsnVV( zoXw)yES|?<5(fS*+wF>7UZf~l(CKnYs%`tzGBSvfKtpb}c!gQu#{gfL2EGdF}uH#Bj`kD^EBdm)WFng!JV@$4*$S8%B6oSa)a zAM_3*bo5B+FvWH}%`3%Pq5=J<5GNDkrzxppXs7^7BHhC7be`R1+p8kGCwIkBQZ|Ea#QbKc(u2N=eQa&Iis1_;(#CRW$V!4Ap++8KTkSg;HH4^kLnh1VO*Q$yQ z4Zmo9KAXQL4VEJgf9rcO$E6b>!Bqx-xNB%?C-Y0vFuK}B*G6nq&^bxd<~-j$KTc-n zq#~+nN4L;1SRf=Lfs+(7`Gujz^ef~(c#I)Z1L^5xq}ga00&d<4XyuXCjTd3KV%rEl zxl|blS+~&FX?Y^2oyHh7@ATrIJ7f*)w(EaDAw&ymBpplxjMhqOC(n1i?oq?2waMZ& zO#vDS)SfK6Vb34qnLJN=aC8^o_>itkR`h<&peHqWzI;QYg&IUE3+ql-1MvxFOj0PQ zH{h}|CM9rcAB7CQPFEG^Q>Ey$i~grcza>^t5O&K>y(H9fMPj@ABlOr$L?8 zlngK-`GVbY?9t{5HX+q~7(isafRqv$198o%c{D^NJ0sg((=k{?6D$^-IFmO#*nH0E z0J2t--+Y_V0N&kj4In5H=t3I3%kLS03&g`G{X+u=^ORastYIw_z>nyP0$-x3P`opx zT^Ua@2pB;07@P%WhX%9)ZgwsLw{xag0(tC^U{cUjVmoBZ)o_6GA_IlyV0=b{!3z@b zWs21IBXAFCz3@El#!^Xb0>&LcHbDTR7! zgKu446fa z?`!YsJz&rsFq1TCL;u&K1`P+Y{-peZNAQAvJdVH1ov-l%Y>|NYuhSa5z+L;*f6VFRxZ-OL8;R%_e(yyZiNeyUA%fKM60OIdgV$ zesOw!adNR(EJ$ly-`~8yxw^V}Pm59w>;J&o6B~#esgu7f&wld41lDPKn{M7^yDNm^ zd%S=#@5Sj~=Zn{f((@0wPf2n^@6x$gyv_it&OUF5dhr88o!6!xofU04;qKk~bpp2Y8Z*F1j`2 z1ss#2r8gma)ZyR*SxA6F$j&ZyZB52~hoB0%*JnR1PkxMn7i`k)71;{(Me-0hqyi!< zTjU54xP~jy@xqTz0Pz+4f@pq5E(h5+hyqoxPC$dN3tI9SAV{iw!(Kgb2Z@$fWk$9g zSp#KuClqda7IggL^e?BE|JCzi)coX-AUz0J%*+`Eeo>dOA(868)G45?R9Iw>7v&fd z^0XyU8JzqDaLik&Zh37<2SeeE8V>(!?Z8n7LehRoX(bS5bi+O zzlO=4uesnw1e>hf!axVEK`va1ke#Bn3z0qg3T$7nxXp6FYgWUSB3JDKUxPj+6A+0e z`5MtGx`E^jY};a6qSKIk1LURM6Ox%7&Ehbk;aFBhQI#QC4M9XMJ^4vAEm0`3Bl85`^;|E_cUiF; z;{_h#6P&XU%@#2z_jL1{bWQ$u&1`20fzG1&JXtJeOPt5?*6IC@T+lqN8$EybvY#Ys z=P@a1e)2v0A+vq~ciE!`GDtou--yS)9E~^nxS*4-|FPTtRsl+@fuoToiB}kej0KPn z(4en68Y-ZIdtn1la$AG2?T5%Pnmb_N-(#91mWXkOx)rSnY$EPj(hPM;L9Bj2eAx48 z&eG#90Db;O52Y1)f=69*GMm35B`F0>*#VQQaCa43iB97oc_I083VR7x^nSK^x7)tu zplF8&PNOsddx-ATfxovCJw_9j6j?xCDC+)H9MVL%9xM!+8%$OLG|6@E=nYb0+x4$y zzUA;{1BZ?My)ZeANZpAm(w0mCPe?VvX-sdk&D$)!E`bI%1}~uNE|cYJWMqKWkpc?z zA_i{GNNJGEO4_NQjxBdX5!@-k+XWm$gJLmTd^bbx!%P5+zVe@8sSgZSwp()s1UK|u zpJ@@`7Zjuc+GuvZSpGnYr7Sn}1nJDwNX0-fVz%XmPDaZLbtAQ0C?2G8NgrYxA!;qF zBXa71JkDP+SF}JP82S{<4%S@^6EHc;Y&2F$v0G+x`QSI@_u1|}{4`Rev^K#$MczR& zy8zRKX=_Y%$;joCL?s0Z~!5F|7p@w}knF|K4p(Rs4%6?FyOBlU()Q$RVK*mW-p zD^ps4gwpa#onK^I6c1L&^}q;UypCpP)YV*0f)#aBijyx(40JCV>j@8^nYfKmHss`; zDa|W%LJbP*R1{wFQO(rHvJRl3LOM^^(l8U?MsoKQ*MOjNLr36A#WZl}E2R8W7#LTa z_ycRw2S9cYbprX*yL{X;{|%z=!7<3vvE_>$g4~63#3Gi8gT*o*XqDm?|-W)STJd&`HDpK zd&pqG4x9li=z#qglPY62M?wqR&R ze-gdnndTP=pW)&h=c2RpBwd64GVC67963LwL5+vcS#|u2c`x&Ya zxNzW#E19Lt0=*_f4Uupr8{=|8v|9aTzIqeQFDmkX(kpT45tt$?l+yt?6*lxh$oJVn z3>+|rYp7g~T7bm>Uler;;IwcY0RD4R`EbM*WHd-oH12JfswjF@f^EBl-G8s~0ubb9 zi<2KufENS^s!)F-9E~WPAAs(Q#skran7Th>%S<2)T|gT-=3Yoo5M>THJVj?_TCWoz ztN+Ajn@m<3odco3zpe7k{q_F zWLWQn;_HWG8J~icket&P5Kw?Qt)(R8dLWj^LIM|qo-D$G{Vuv_#CQQXCh0YO7$efM zpw0(`RH5`EInFS|sjJyVj5*Rs&X~)o?|FK|_V*k$EX!?5zLwSeBZJ= z!EFe{t!4Mj>o}gvJAD)>g3LEGY}hM9_$Zzs1V{ZqW1EJD#C4^ZIUJz$nw}1|liV%% zt5UHHJd}dj0pK9ek!19fk3kobuqyQn;*Hz4r76za_7gbpS z7wZCYLc^HeuMiJJ+#o?tQtWwNQDmER(=h#>9!VU~&H7o9X2p*D{7x7Fj2DoBK@J~z zmdhC&Gdk7%?k+3x8aY8SH=P7{!JM4SfYGJ(_HLJNbFgIVRw|-R7e}3sji~7*&0p^P znUc~f>@?E+tvNxOv(w>Ev7sDe?qqAm3*L_Kf;n0F0BfQZof91h&%~k8#Z&_LMKs6h zO}O`*(n2q27BIuyYoW3-PD|lXryGFTRDkazXeo0~f~wq*S4IPGxA`^O-L%XG2Z|Rj zNJGw7KgcdHIqL9I{fy|OSz?(t_(JsiZrqKx?k4?1} zanuNOp>V+yxfMhMCG-#mS4jTityQ>ERe=nf&2RL>E(H8N7nLzNtw6X-JdA0kGCw7x zTcZZh+{w4Vzc|OoWE*)gzBqr4>?c0}09vLBx%bGw$a9H8uc^0D;*lNyevgvQ3=9-^ z2x-u*Xd##_U&~Wwv#rwEA51CXa)3g~Ze(5*#fB!PR38ZZq$utX%x@}km=~)bxe~#y z%r_|J5-kwkCPz14S9MMuO~=d^-=j1`kZ=h7mimw;DayofG96ulx`I|K&LAV-aRVm5 zpKyLYnbxsje8BQ}hKhoco|j@4Ob@w2?h>yo0&*c)Z21P*Iu|cQ<&KgT=^Jepk;hK` zoC4vc$8mD`cY2_77u)-PV40w~kep-k7Bny4<}|=0hmH$r_`nNZFKq(;gBQ0X<6LN|btM;~rV9_Ogx z0>~IJJ?Yr_$&aMj0^km=$q;N64quZkJKBk)*;0aT_IVZ(66Lo`7%^Q^Dr*V zRa%-xk`bkn4*4v=sTI%@#WOq%7QCi#IDrXIqz$OqATku|?dB~|yq(|$fGwyKNFmS| za9M}@NcJJ;e8zc#7+^G7cre@oFDN!3n4sQE6mfZ=Fh1o5DACNU(owKkXDIMk6`mby zN2JJc&0rdBxB2cGQ4K}}m^#Na1TIt@Qx|^nWfg~fiOj=X@76k)dpg4pz`1vLsL4I|^ZH#VAyCr*w#Rx1I_rQP`$bSqO z{MqpWjT#7E(7F3~%S86^f>!?2c!9V4alSggJe~jbGJ10sdM+K%Nzg&}< zP}6`W_eIsZ-l5wSN$6gl%wC_&k(y8bn&-~Q5%WEAt;w(c$Ia$;Q|$7xZoZTPebN09 zs1ug6=yH|N4f?)&yUp+Ehuo#StQyYwdJbhbD{J_1VpBeiu)wnc>C^LO-T3g#{OSD@yy z)2Q=)Y2jR){3T3Q;2D-o2Ii@)QwAh4RqC8_z!`2K8`6gipsnt6|&#CgackQ`t{#ha3hGcK=y;7@BxIr25b`SQCNtTf~! zzh*W%E$J8y0!n6mk+ow~)Bo=EZ%>HRozZTd;9LIQN)e zD#0sun=73goNu!9TH;rV?M5T-Y*V3TTaA(msrU<2@A>pC^*JP|*R z7>O|CKjgPH*L&NW-LfQl%)X7utMtj&ZOBnCXg0MimwHR$D5eRH{S3P%31c!#>3h3; zx8B_WICDMZEJO)?H!HF%-_b{{-btZjegU&))EF?rM3Bu#1F30RW{B`J6=);L zy);~*ZIIaxeg|*NX0#Xl2_`VBmaD#b4y%Bx^Ik8Amh*y3vS4?FG_7pOsgxw7Ay)hlO zfIhQz%Y&9n!=6Uu;mj^MKT8S2S-DImWik{yv7OY4=W_bOzTt#wD2+9ZvLZ+18T>CA zmdwp&C<*=ShvJP0=cwk~a_W&e^S^EdENGjoe_n`)l2bju1l$?K*g&D+sR5trv}CqL z$#aJ{8;Fpr0+c6f^wt%O7x*(tg;<z`o%P9PYXe|^b4UA49uWGjVE}mZ|vvZ$SYr1U5So_DSV|EY>KO96S7-l(lrE?a*6vCiSf;9QWi&dNMvDi4 zCKa6q)*EV11XwHSc2MZi34Gqth3g-nq7EIvdm^;h?51NtHmkAoMFHd*F7b|Y*aEP_ zFxqQ@vBGF2oy=JO?fULN$tozbTgKKgpXgag0uI-XQ2@}xIWLiKACQ0W6)Ema3YSHr;8ueYaiz#yxK;&PZYx zEy{jGQ;F8EB;it*O@UpLxR`>ZG|uL)1uNv*qEZkMTP!0<(Dk^_#X73ljA_i}e&KQ? zG!(exYFl%?-ootUV&z+s=j^9=c`?Ncl-VD_mHia42>BW^5WK*d;02s%gM5UV`2`xW z24Fv>-#ZgextH;VYahl7Ow|BKXAHPKSfGsS{vcjpPSGFPf6gGDDZ_3O9bB0)o^vvbU!5eYIpU3UN1L?V<=FbHkid|`Rkt5OQYIfEAv2B)3rQ6w z%atj_bMhw<3I=ojj+STCK~%EoDQpF@Z0K8L=+kYIrAyxx5}<}YbptpQN$V)*^^viT z1l`>`vfF8yL{THMX3qZ>a9Jz~xp4Ud)=04Pu!5pkG_SJa)swX+LCX*&uPS!@?vRm- zaIrukx;R;~xDeA5A%97DMh&?+mp$7Q#l~Y6Lx{xbND1ZG^Ym^U2ne`b)-e*5Mea0s z&S0Sp~hjzzaI8O^{8 zR`jRrGT5^~+31hWv#WXDx?H~?SInhEv`TUls0dW@1yXA`rcKOXE|@`yI}1 z!3&}=ifBTC?yjV?VU5C*9`J%NmW8VBYV!O8FQDa$=HzC#W(z(@B2*vn{Qxx%@*O?G zhIs*9*O`qELOMSkL&K+T>Rq-abGsR(%LabL9E6$Yc%(;m`MN0bae;$_Hha8V$C4xS z$gf6F*CYaR!PJ}!2Rgj3o-ZLj;01L-K6bi&%OzBHt*WIC0`P)xNlrqH zB}8;=3UM++B$G3VimenQ@Yv_9o80FO6oh|72bAeOXH9SAcgv{+DCK}^Cgc;IN}P~= z*Fab6MBE!C>!c{7OmMv!L?<)<$XoldqbMD^4cl0BGJ*@450p8ocsvN3{$sw z#38yMnh*>rRs}#jfwkpk-%YM(%*wDr^^japX;~U*j?;_~HoolE$rKK7{g_o$b6%b+ z3!GRXj81?Ug7P=BGsz#J<7pvS-~F6P5{E7s=nB7pS}w4!6lh>LBj=xz@h_S$82Q34 z5N!iEo9RN>h^LYrSU@7;l%<{KQ*zl$;d*m1-GCRVE$Z5A-t9K;xCiRqMp9BI1&Mg4 z^g|6}NVISnyp!CV0L4VUH)aen5jcqtSsnq_6s z9@7R``6lEA_fu4QuwqYTumlBQli~$<)8GZ2P89^|Ec^maNzlm%-Kc)S-iy5!?BNA! zaIq&1>R%X_Uc2>&V8QtK$*G*F(>@OAn~XTeK<)!xF!lfUTINi^fc} zgvp;m>U}^)^%np5(mx~_ZoI{O$0-R0M8E+hIR<_KzB?=V`B-=F+& z9=$#ZNGosi=4M;pr|o@OZxA!%GBeG97dTxW`R?T^d37>hB;h2~vM&r(AuTYkI+}0F@m;3XbA-%3|Met)_IH*69 z*`?5x5kChA;z${YfKC6tky1>-6STthjB3Ri!DS8#en6-ljlxveB(l>Dh7U{@7E$!R=44^SjB zG6e!c*^3TUzL{@Hhl!P66>vh3V~hr)h^Au12Wb>-%k?in7AQE^1H4vF&FiFmT~med z9G1fEr*F~70nGs}T#N>jd&AEna=3&n6@jGu|3V=CTkYp0v=OckXG3W>s!H0 zPvZG0c_7F~a097IAOT6X@NzDrnEAYkCiNRz%!L^A7^#w{jjk?*`0Z)}ZGu2F63f>Z z@LjDAL~H`=euBaTQoo>KyZ~b(CQlzM8xYxRvcer7)q=Y=FSA{~bGh(ALW&_w0xu}5 zA}i8uzLSj)JJ!pNWKaVplS*a{?~K@(9VH<^&B%-NF`P)1&`B!Jvv^pcz!@f`5hrIH zc8+DL>X0P|->}PxBU=@CT$PX`Zzvjq;3@*JOwth?4Md7)K`vql@KMs>8`s3rnIqk> zngWT2+<9s@X(ZXJ1vT?Q!(L0A9NEk4917?o%oIs#Ko?TW@>|}lt`N#Sh!TE@#W{cs%Dck}-<>0A)2v-PIWi{a|?Ky4t_u z8o<1(F-;kVNh=jEJ%OKq`ou~GPA}?lgq-B%LHmK*UvWK1Y#kz5Z(LwFbb-%SoYS!u zE|t#dAcZy_2FwKH3LUTMLaap{**!ko%@JcP2 zM77jpg(^lh+$_Bk@FfObKu@RS#X@M37BBe5+@asPh(i4VO4zDKSy89S}GsOZXXZt9;z_i?W z=*N+a<9LBN+Waw|Ox+=3viDAB3MTZw`@fEM&L3C|Sb$ZSIqNzf!R>Jb&02#Dxgwfe z0C%iu|)$Ohz9SL?<)kxW_30|OD)H_5uc%EB1j)ZekeLes>av1Nw3fBGX`sV z#r1xQyh&B2%hnmtnsMq%Hc^w3@*FmtYe$Hye{+Vd!?nk--T{({R>Bm(PLtWXEH^xE ze9kceH<+trb6zONUf3i>_*XW_ba-zF=C4MwzoU!iTOIoySwj#iYYV&4; zI`kOkhTh+i??%VW$;&3BR$CE%Z!*X146{4ta`FO0d&-t>@~pd=UzyL*Xl#Xu|Py%ubw~ zq^WmYlTsZ_-Pc9n9A@`;OnnzFsRTSd83~%MFZCmp%w+-P278SQ#3Cflo*}c@TUQ7g zydMp@mze$?2&WPRmTej(Q?={ran7@5P)94qek?Ulw0 zH2T@`W{O<$kmtDLF@DPR8YRI^isQ=TW4x@8y%J?dI=%0V?9~c2)v^YN#BqWG)FCR5 zZ@y*@KT^tlFXpUoY@1i1jtrNtM=2HwIdt-%85)q0&~Su9C#-c!!a&H{z(Df3maP(9 z3g`iD8}DM+*O_zlK0z}nDk%#lN9?Np2{I6d^nR{Bws7=#&Xh*CBPIE0j3^0mt*u|# z2Q&zoSE3~H#~Y=^%o&k7FQ`8%=@Jf?(h%R+6?%>v^5ALA*-%2S!Ce$GelX*ZfnV+o z176@Ft~Q!@Zp8Yml6)ofAy#T7g?j?*4Ke4P9l7LilQW;+<03e+GMXSCC+zW~^M&E> zXwLfc9!j7 zGTC!c_J8Gh(irkJmtEjn2A_hF5s%H7C_W?Ko{QCN>YB!3%^sHQr`U*7!joBcUW77X z{j8}mvgz_(E`V$l!nQCBykN2*+BL;RUsl0Sw#120%zo}c!3fpLFj_2f-uJznD_LqXy~ybv0^ zfQ=gl4PX+{#9%HlZ(gPG0yX9bJaP|v@WDee#vl&yg2|sF;==I*hQkh>6V7z#lL|(? zv)`UaTRZyBV`k0XJALXwJFcDZXG%s8k$#!t1*m!`rR^O}*3btVPKOfHTk03Ij2E;z zy^F@JoBh{+Ym*%nwNhfBmVwkeu zi&*vp55onSR$eqigs0f$ygMCR9=_lOt?Uyn1>MB=Ms32pW4@v$OmY~X{S8M+-jL=m zuo7}TK~C9Ul_s&3pVRD~pAwdaWnE70(tC1>4yf>4$Gz?6@fDRb2 z;5T8faPEU3n_cS|j)v4*l1kBr@b3v?5uHy;ed)jxJR#-(o+9nE^iA_woGIY<3aN&K2nQsCT&AzN?D+5mJSn z)p;56xvIR}S|#Uklu6?1nxXs>JBm`e(roMFV`unij+WF&!&V%XLXkNh21t|U8tlCG z$%D`#Dsh~oP?nTWqvcNNhwq7J%WIKmo;wUWZQM(W4H_u*FMa6{+`@P__|Dt{-<8=) zlD~x^-E`CXom|9Q)u5m3D#j+XY!I_r=p@PYGj) z&%=BnlV;d<8ZTqu1Jq@Y%iznh(`qwBa|pY=a$+*GWaoAVb<{h3BPK7@K&|4m`bvfm zs5h023KPHaBm~+=Ohl(~=@tfJwDHzyK;D4xa&}=b3H-rZX*4}AiCqimC`s36PqJ2` zCD_w8GjtM-l$(N9_X0gHgsCCkoD{w1;3pSPSu~6nl$?3g8lRH^P*$P7uITATROAND*OFLt9KeO($BQjcnU8V0Yh@UhM?ku3?g~- zou-c&MJmuqXI2M2Kg@IFv@)(;ulLMzWj@362QD@+GPFMAO(KIUGnCWjaK3!(w%$Bcbb5zV#AfRowo8P!dLgU0HPr;mIDW>$5?opbtC zk4Gj?I!#01gbVDu9G`@!$1wwo3WZ3nvCm7}N|L5Bn@TX~BMUkg&6T;#Wrvhr7%RPC z{mHzNKY+Xxzd%RQ@om=>{bSU?70A}q3Q~Rj0-kB2L)i>qWMnwdV zd}^9LMj#AyFukQ=k(>DId*^lrZ95#hm-jHi3m#~+`NCdnA8G&bGwrpf#|OrLKGcdo zs_fwfIvD|AL1%ae<1!TdLVKt>2chXuyg-}NQolg(g6LFvQfZ7?3T!!!u6ztH=mfJs zr9;-r4$MhiTH?zx3q)QNFHmd>dakQOd+q*bPsa;Bj~LUxuXSwlp=90~7e(4_tOUs= zMra!KlR0M_)eVF~E2q;c+R=%2Q?+T|(|UdaTPFAOl<&CAyGh)^wa4L+^(D85+(-0AB}zZi3Z^PB{d01wnjJe%auh& zrlAa$-eb|nD-ELYSn^CPu~Xxr+aEuI6#M(o2U1s7Q`r3 zm)(I9#hDJ{sVA{exjI}+PDSBdfCjro)F?UtID>blki-g|LegtC>3E}W%}b-`pB{{X$7h5RmW)b>9N+1SBLIk96DN6Vl6NSwUWoDCR?0pXlC>TjizM+xzR0y zeJod(clzs(o}ij`qod3s#BZV6rWsKKKs*Z6v}RO~XTjkyo#}xi!$7yz=y_!{t-cBL zy!g@~DpPtf%F}Xz0D<+*z;kQ*@#@gCkFo zpu`0)hrK!2hV;$K*s9LxaNW!DaP=e=9fEBaK!i!Kl5r*-$60ILQbr#2m*feK04A+f z_Lal54~6L0_lE9CR>ZtHWyss&AX}kIQHFqP%9>1bHJBg6g5Gswb3#AScB*--d^7Ut zctNtbJi~s98ZXdu#;otWqItuz<-KNISU7$4(7W2 z(;aKY@b!oAg7MK0#*TYq^6-;mkikQ3exN;Ff1W=fSRf+it!S;j@F6c~N9rB&b8-w` zpizUCBP;3{UN9`oYESnb#|xD9oOEze8$`$S_Lq>C#tZh`ujxm>J6@m$kZ>CHl4ZLO z$c_(p6>o-&s5oy}(9~U1uz8_)-1NRwk5mq$;o!L*!zL$Rk(Ow8!JJu+Fy7|zGxs;w zx1k%Iu%G*5D}U0kgVs2mI%s^~MI-mTS~&<%n(kP z|Bw6#Y-^9K$Z~Q|PTz-4AB5d|7$eVbd<*(pJb=MU?Ia`yMu}n)Y|wAAAORE8U6Xt3 zZ>)Rhy~&NM(V*HJ9?s|iO}gmdYI2szBa>K@ZE-+SU`cdC6;!HZ@QW}y-$Ah^MT;4SD;Gql+>wED7 zeR#0uiXNsu424j`L$w!6xAMD*#GG}#MkVxLaHn5>S7!;z2|mc{6NgIrcrw(* zAw~A96XPeiW(j&A%4EgLA4mp<2rs&(Xu=09us%7<1WP-OKJ;X?51z!z*CmeB4AL3? z9|LiI(#4oK;CiN_3K@j;(@9v5omg{fT$57tCDphiDF#wgL$j#tEclbjGxt+mrn{|) zW=}YNjuC?tjKkpiA3fjOdI#8p@{PN_2{d@Q$;{{s&oU?i#GU$ojkZx=_Pu@~{FhT#@;su|4t#1@BQ2PVK z%2y``7_@y%R;*armwnUIij~hUpUb=WeFw9hN`Gqk40r+iOp*$w9*FrH8RG*-(^@_| zWbnt9KPOlqVscJ~Y_nl7IS&uBK67gX8CbmF8Q1!D@d7JWtXQ#P#flXxR{rerLU@76 zD^NXGz!a-_+~XhP1?mMcI4f4hb!qm-;fDt07&6dbuz0~IUd!SIR;*aDV#SITD^{$0 ztMXjD;P&dRE-z~~9qE|`pCDhGV`b%Amrosu5Q`Ul%sG$b8}a)VFR)_8iWMtXtXQ#P z+K=+~XI# zFkYZ{c?2(q=2!b!D!V@*FNzmX`vc#L1K;x zf53g+UDm6*s#jfChM5&9=%#wx&(y248huK}_R8^Wyef*V+z^{`xH;~9cp)$trZz3vx|Pj4w#Oif>9w*W$n*&iOa950*Li>SgE zT{Cpm+B-Me+tywk8`kzzXJ{7~R?)Wr`E+>0Ud;Lxd!rPRUJIQYYa4d+u4&JOjr6ep z$Pyw{ZxZ*CCjcSX{^kymg7M8+_jQ>7RC+E(fRf=0XbwJ7xqlwS8f0*G0yGUnPuS#K zTMWNJhGf4>^gsy?n!=#ykyicc2Bvp=o-V=hBoh-xeWUZ)CR&52kaL{&s!VWxpRxr) zJos}Wad?;q88#{N!RN*0{qF0USwDL)sG0VreMaY-ywc6H>3MK& zkAI_LK~s}mz6Yo?$jjf}%+ub?!L9#CeO6uFmHpgyy|c|*T}4z^l_AyY|N86ym<7BpMc{gC%wvY}1ymx8L2{ZdFJ~xZt(RykyPMp@jrGpy%S8U|4IX23-p4m5RJCc%aUm4#Ytvu_7ktcy2pMQ5btKz#kfqgu`KW%t(A#`>* zEVR8Wq^*I~kKf(eI^@G4=9Ib9-s<+c)?cQ+UzHSYx`}XZx8B+A@q9dIrHltVgmhv>{?aSu4Dxt@+meu6;4`~p^o{jGeCa+%jI7TjG87K$&CJw!p(Wdt zff7x}eQ9I>ukEnn`<7t!=4IF0dhBa=R35OQj6Bmz-{0_M4V_h(*H=6OY)BSh9%hCP zMPraGpa46m!=;{b6*40}o5Xq2MQ?vlWa$TTn&<~yaRr;| z@XfPnd}IBz@~lo)tn&8yE1Op%S-pAgwU62I&I;$O$C zmmSbpd5om7>5((&S-#b9Oj95;;71C$@nLWi9Br6vgG>Z}4u_>p|qkFacy!-v0xsr&vOlVupjt?_7bc#L!722G3DtUE!&6ogLI zPJfH`89V1&MyeugMqGAg5a_qo_ybZaU=DSteVc6x!t)-+i&`jr%^)@ za4?8NaWjJ<-skD;uh0AFqZQ^9_loZ2%J|uS+4#GMYo}aRYP7(NVS`2ny}VpvnI;d_ znnP1dr}oBL<@rdfRgI$mxcGk`4AP^(Ex;At+dV$x1@FdvZy&6c??Tiux0K!QAq(hi z=w|4fnR!`VwryM}k;#T}kNnN9rYw%r5WV@o53s*C$?^@f8oLOD;jI#crtDxZIn0>( zmbM@bR68rN&z6JzM19<~G2KOBn=lf>_673>`_n*mPHZzlR}MUsPN+vjHfne@b84o} z&GW3}=*_kxCrtfHv!d(d^dnQOwW7z99s3AT`@?+UIt|%dr2yGMH^CVw`r_l# z0unhHjA$ct@a9H5FaC2GA3VXy>7JV}ABXTMH`}aLdKZ8z+P?+e)2-Wq-E7vt`6oz% zGsIz~&7}*OQoV+8nktlswHpXWIqBy2Wm*0bUt=@bBZLra!KydO2Mdnz2npxlNExKM zw%`m;ygu;A(5;vmuap_4Vmt=FX6xJYi!PA8zuBbx=F1p2%7VXRteS6o@kXG|FV>nz zl3$jOwN7s?6r#QLA}7i>UoZQw&8qQfX7+-cn>lm~mTdo4am#=ala(>xreyR;>7W_$ zMiIdVLV~c4f~xb*OVdDjOp~l2X1(ftgL6Un;F%3}qaN@gEYL$i02Rt_nr{zUkJQH% zp*93`!$8pBK?3G50ZZhqsHy)r8G}%-LJ&*QFv0~4n>W6$kJo#!O}Pd;#A+vnqhP>j zFBHhzKlR|+ey^ID>dmRn&5nb7#vtb+Vt?27!;Zu{ri&VPE6pZNO^|6u(jsE4G&TZmrzHXq2Ivf@hggmw<<(Q-!*hjUO5ZIct;jEe@ zs++|1+3ykX2cIT60paAv=SY|n+6o3Q`EJ-2)w4e6$3xeYHqVVhPYexH;M?;l36<^_ zF%tOX-jt71ZK8!=D0q!OLF%9;j}TDvF%acR7uOFY!6)=A^P4n}op<4qHx<8f-~Fbo zG%eTGN>2EJIDI>*7l@5og9KBHKDeu3FhkJhs^@*~_Q z=g}DwATE>YN@F7;!$gUC`MdloYO)jjDg-~6o9$V|_6`3#25Xx@?U!P7!nepXh)%9| znSW;wW>5|zq7Wn(QSd_nqb`6Q2zpTF&p93`5ujO41DH*KwgJL#ho3YhzUC93aeerU z7B2}{E>ss{0;-me9{##NJx=l(8~N^844FgduFfG_`Y&i=v`ZH|5deDdI|q0NJ^{Lb z3b&Kk{92!Gk*RDJm2G1pe6xO+95DQcvD{qdCF2#SauxlF|FJ}WSXrsz+;?0r37yCc;7hS2z5&a~m* z%wXW3RII;=II$s&1~Wn=)h-mw4>LEV(fh(}J*Eq~C z#B!aDb%p@^Kon{6yQ_ky;da@&sNFHGt*V^;zdWesDu%=Mn5nbNS^GZa7OkIn;Sn(c z)F*%}07j%B5!?Y>3@>~0i*5o;nTN#{$bWa?2!4kUmGebddOZru=fBUB=}pd{4rHC} z032~M0L(gOkX8Y_6MdIHdHi2`_A-{RPBmw67syuY(zRO)R~`L8NDTT3is;$u?F?}f z41dL8R&FJEm&eU2Gx*c}7;=T_8{#ZGH3xYAqoVBX{IPb2*<|zZBs7r*KI_z|QrzS7 zeXHkOd4|jL+->lGX+!NJ2Bgxdv>BK7X7jsimV5RQvEz^U#Sfb#v!2^pX_&9d<%c2R zpc@EFBzJlt0A=;f^2S?>n0_z1Sv0*ee)7|ZD(9>)H=2vEDMzkt!i11k@ zr!iAAwMbRbKj@-PLvllUl0IN?X$bvJ)SiqVq?h6S>D@lBV2A3Wo+KFP8^or%qNb}% zn+@M!Qs>pU^6KWmlL@R;!4{+elyF^Kfv`pt_gf=Z3QEUS)GrY9mF;9qxtKa8gV5I3 zSFUy?_uaj%ix8L9sq{~#{^L}KqD(MF5U6}ae&O%L?L8y<%V`#D|6>Ck3p9+FsxQFT z`hc#~>Dzk2Hjw~%xQeK^>GV;Z*NGA*K=S>_Fz^JnonL4s z@)CxM^Lg&2*7TB zdH1w<7)rSapFzj=vZyWFWX}uZpt6`kPmxvl=n$*HZ0lC)j5p(A+x(J`<;@oeJY^=n@Fi-h_=O|p?ccOjI-5}mnqdz$BHpxF1HcB+Jp`}p&7aVNobM<75vH-COo<}A z<$e8mqq>{(w_x4654zAd@lK?jet?rJZ4u6MMTegd&gMq2Mc^YO1twzzvqDJ^NyQJx zdyXu$i~JV$CV@L69Ha4H_z^kl_AovCf`MF>hQn^%AV*8Fp`^PHgAWUf4yPOJZQ&O3 z*C|PO>T1r<3oye&mon6^)rV;eg<>ouAF?0G(E#~LSS z>>g6+PtEb;;|=S9S$cf1-rFXTVU!kzXihX22eJl{>y&bb^}iFy-S0z#TY$W1_coyt zEQ1(G{+Ox*dD>1})4M{VkZoAB6&2(EFg~$GDrH zn-S|4oW8JbM58eYdLT&wooT%%M^E@BAgYqA6#IvUE-UZT?d=X=8#z8CtMAf_Ib`O{ zeOCW()xIba5w>g2=Kb~ix0PEDgQE%Kn`S8D9tugGb%Zw;S56sa0X(}@bBbjLV~Y53O}epFV@z<@%{*7PTZ!t< zioaAtV{y%y&J2s&7c_VYTuCNl289@_;=f^6X6BE&j@9W&Lq%`I(z6MzCh8hGW^9 z_ow2}yR$>k^dCiBg(N`||3Hn>$2Za#mgD(f3nK(p)7M+UKQ`i2xpelRzzV`+?}qHB zG;ZBE`1qa|PaEx{C0nOt+IO2q^1Z-dSn{+&VvFd zh=><~g3$KRp%3^P48NZ==@av5W^_G%e3#xZk-}RR4@-WN+z$Nh@g(~#ZyxvNCo%g)z>=33ntS53 z55aAx{rw^BNr>@SKysIQ$c|p(&28!yeCS>L``go88T&>jCpUM&ex2sV`^z<0ePO}L z+YhB!81I^sO&%J(r*!jj@soagtO%_j+L4xq*=!2y$2f}I<7Go6eCg#*!-yjV{01qz6n*hdkX;)X*dv0$(no+pwcO&39l2PkkF1uF0`<&0e{GcJQ%is_S<%%S~U>1jT)Cj;oC07xEFEoZMv&PL7ag=+*(^rdU z?*pjA%&s|C8$WH>u>T#1&w5aD^DCV9)Z@tur|+Sr(2x2fzc4biuzpI5#^=NLTi|0L z$4g!lcb>nPPju8d*SPIb!2Vykcy12|hs(Y3v`4Rx!QQIuoSYl(e+ZB}jy?ZAC?`!f zd2OJlH0i6%xd2Z?RQx$|T~m?gh|KH$&K;j01Ul_KKR>UmtfZ}IdjY+CNQ`qSlh$<^ zlk7S?b@4uPj&;60(GlBwxOjNGh{;E`o*mr&%8lkf6*o{r55Rn3Nl~ zIMUIAy3^aaMyv9G@oO4`^Wogw94{|Ut7#ci#XsPvquC2fk7=310H?xL#_*WWh5srh zvdWRQ^35b)fTY6}D9^EHY3>o`#iEx@FLXgr5Q224`FV_kV?>HMU?v4+zv=^+)RhU5 z{EA{&`T2e684ZfF^67=W-KH(qir_<;sy#j zWD+ava4jcZfk?b_hbjkTY9 zcESWfYoDV(;k9~sR+zz-Vg)HSwc(3G+t<--Y7`AXM?^PShURn8nb?d|XJPJCfd z;q~1W(q|(?U2w<_$>Ag$L6EDPJE>n`qRLL`(#nC0{|ise88%r8gZLJVdYmIKv!~3CxyEr63sEy`ts$=S7$^q0a6gugfmCJ z5C&X$csRRGr}KHwx*!RdeHeW^Ki<}1G+sVazX^@d#>TPXqrSV(Hr^RIw+!*I$ z`Ho!%!0BDDlOypBT2~)?>j0mrFH@Moys*ADnhLV;0)@qRjKOCHY)GY*)4&Ap;M+ks zg=98jF?vM2Wpd`Z;BL-xxpK0Gp_9AsS-^aEg_dmcIvNT{4^ZcB=)i<8pkBOCInr2amCOUbH{Q4Ia)wmGx#$&|dots_u z{uAT06CHejPHIs<_ zOR9C%TH_CG*BWUo0pz*$YQr6xqV!LYxq6+jn|G%!gN0kcatTqY_%~#JBT1DAJl)8! z9t$krP?k;{et*6&#=XHK-BNN5YPg=La{}w@SO^j3+7k&M%2kd+sA|$ z(kqA~78<6X{Xff|wHl^9o0Fekdo)@BhYizLKGs|+RqYE#7Wy| zoj;z`qdTD$pKNan5e1c%g0c+(Q@RF20*9Jl0oX91>PO!6#Kg+mLI6_^WLgtK;>SS4 zUjb0UciM@@^5D@&gswt{6qr8G6}plwoT%f7$LzqZBg9p+`w-?u_=zCOq;YAKI*TC zksvnvw(;d~BC$R%L)7W8^QS#uvuix3v55oot*w9c1VzjWAEl~uEBM=r-D;gVI*wn( zU3=sQ_6(0Bn$*cJtdtUl<>qF~7aZBw(t%S%ISbiIizZP0QLK<}5^V@2A%A!e76S+( z;_h1pz+#FqAs4f=8C)%L4siRDW4_#V7ynEwuqIr!KksPgc0HAvq@)Na?6RP=geT#= z@7qdMME+;d4I)D(#xoIB|MLAU@%DRz9#%SxE8^TXO8#!q^>V$NQh>kUrizn@)w=L8V!^x5r0I{6QdTcPvI zmaK%G<5^FgK>=H&T;(2qqzyf}tSBAFno$9^*B0gT30TZ%FQYEkVnDF+Rnhd`T>^DSIY^XBfF{CI@p191L%Rvb3+?0-uGSCsp}S zmd<+{8P0f#3~ECVjDR6qr5SB5(4Sq1$IuPZC~*`KXMxM7Xhc&(?YPYUuCQCi_) z_69;LZcff~=>Y)$T!CH5V3PTzJ7Y(6yhtNlf3j=QGvQOt<{t#E(ho$Yzqapt4Tc^7 z_Gk#F=)#*V%pp8F9_Gy-Ff2Fj_xJY+BjH&wc=z%o3iV>3bxh-Z`C-5B5utkCpTQE^ zX@4z38Ixf4(}rnj95VhS8k}xGE24Wp87|nDV4l;(1EicZCfzRw83@5OGxS@a^dja_ z+&vNAeT}nkwiG(VmzfEC-n7^Qu!gK*G<(>adz0-G?J|!t2|$TbAKZF2xP`opot*qD z4jQcGtQ;E&bocjf+2bo3$vs%v+I~FXru@Sy8&(w>g+BR30XaRG4EHIyw2OiY5eKn0 zU0W~*&#)GE@l=t62qgzSXPL=3`#l>sIRkTt;UL|FEEKzS#7P(AfknG?eD8X`%tn1G zh_-;Er0_qB!-Pl!T%C42KS34{w;yY4&C6hPnp*H8Rq==uMNQfBjnP%B=6Cg`TO{Np zlh{L%nRby`9u<9lX2tCD^lL}@ni-wT3UEyNSm_m}dMMH_dqR+7YFh7w;vs&oGv^gn ztQO<>yYkQ!S|c!`S_)H1qi1$_4XPv96-NcF_oZk?yh!QOW@CaL=CueV&DrEmSv5~l z*cNgVTPRs?g)d6)k1a1Oh4SBC1aTUIZ26qfYXN8QT5vC0P>$O@#)TzbRo~_o}aTETu$^4-T4X;K#RUpJBuXs&mNE$?)8gO5XPM4G^=ou zrA3|Ng$TiV?K+nIzellqWE(V=BhEg!v|Z-_mdA1Yp(h`&V6M@>$ZzT%FOGv_%Vjl;Lzg=E z&X{47O8q&&G1%%hUS>rz%|kG#HRFXvwd_kxZyrcRbV0g=L|?T%n>O{m67gs{b#_8i zlC7SwR9m*CIsxTDd3TM;At!lW^qF62P$YxOmTzkPX|RMr*CV~5Fch1zFILemhTZR* z_PE(7O9X{%FDYW~&j3M{US`Ful8WL5!QkH|<4TGnd@m~&Ruk0!EF#=;6>v2@H~7}y z(GIhNsN!Cv1(`^bV8|194!xg4TKjdLh6rqsTKY@LckEQtJ6(hZBj%tW)M$*iyZVH! z5>$>+mIFE|DxaGNs-a`Uwv!kK78DU1#1Zin9-+~79{FlW8kc>i^+6RLL- z%*iIUol41R%iSyf+l7xf5FyCnM$Op6FD9{)a9_%xOsfQhqeMt;k`Mco?3K)#|B zWQ-rAQd%!WepdC%s9Wg|+jO}E8x(SYkClg?t(Fv+BM?H`<>A-kovjKF^~~Jy&*v35 z#A+abm#xXR(O47h5FlCrQb|YYhe@%*{HbMmQaY!W1OSldg(nrmU;TY$s%!PU5?TAp zKf_o_z$}A0s8P<5@aC=Xy-!0Bt<%)1q24w=d0k+4Nl_@T8lXg)O>!_XG?^V0$Fq|J znK|1GP({Q7I+lPYn+O3x${yWBRWJ(FSLDIYa?LKkQszhJrOw@oXlZ}70U80y@;bfjSQpZL z)fy)aDG-5N3sodA-(O&#rhRjAM9IVN9~biPVGhPU07O1IUn_x&0W*}QPzTVvxARPN zzvW6AZga;DRUb(u+M$MVUo*@h*74ObcFv^hTcw8STPyuz@d;KU7pnvpZ~N2^JEvQ> zL2gOJwz`L3vP=Tg6t^f1fk{y2 zK2eWA^)J6^AX)`|!GCl`O=PT*qc>^h11G6)EwuM(0d^^&X2m^zXrm}QW3Tu5qnybI`>xQQ$EdAvVK9^ zE+|;rTvWNZeUDE(s8|Xz%eS#)GgxeW`O;~ ztVyJi-%%_NyyRK7h!B}wH79T0kJe^fw&JKhT+}j_5&XY0xB7vLHyA~8gUE)7_I(+;5(@~Ip zl}#<m#CPTkD-9J>4gST(+`*f~h&b5E>{a2@NakE!snmX_2 z$G7G$JrbkEQgogst$NiyH3AYdNJ|ZISTOn(MA(54+s+0lOpILjtF-&dpv;%+De%%K znhFye3KjTL1dC4v3P-`-25E^XCQvw}=7*GnE>sKsUJW$yWLa-0dXVwqaR3vvt07YI z+Z1Nu@c-LOnoB&OZLN)7U?4PcK5%(P8`F5%F_5$(l0NeLLjXNHcJn(;#B_64*CK)v zOSXsVC9+j8V2)u4F7>!c=D|1a_F6LD16tEM9I4%aLRu#EbHp^e3U0C72X-|48gE4; zBvogQGXceD-Y(Rs#b%*dEmlRp+T~g&qmth(+{>H1Xp+m`H~yh|A{4huOkH7VNb0lmAuXz`) z(;hY{9a0M}s+ZAlcDufy1A-t$F9j`rIiu!^Y2ZJ384gYqGX!qhYk&X#g?N+d!I@Wy z6dA5dfnz=APd6H8L2mtYl?;jm%aD?Rnk0mZF)2 zfqQiA0)qdnE&N`o8~?|altxo-+^x->f*;UOw=m;Otf-d!F<(h-r|;5w5hvHK>9-yL zN?<7eoIE{+Pyn`vps6OQl_LD{{Qb7CM>jQn_af-FV$UNi=n@WoPSWTv6>}+4i)Mm{ zpk_kx^;C(6Up9sV+qJ(UN()kS7>%&1CUy1?H#Luv{h%vx4Kc9B(W2scw&@K_a=-Ng zNjEEMv3A|kl@|$LaIaxg8zOqtDTn=JtxR!uHb4FI@5NSSAJ>G)}$U#yS(e5Eb?R-X-!2W@<4Aij06@`?`_`%M1G_U>O9JBQ|e`Q8!OR zuhriLBsj-NR*m~ha0tLTj}d`y58I$5|9CY0RdBwlloE4W3$0rVH)#rZBnTML#SMGn zoKwI0gUt(xp%A*%ViO=TtA-Y=icKe;ghNRZj5mAAvVjsfnKgJ)%1k?f&7_^QVhL32 z79xG)ZzL)Hsq`n#>gC0Kvz~x(^}sF6j8(&O*I(yeM98J89p*>UK^MYt$^lCHE5Ry$ zd=!5JYFmH3F2ca`=L(k(d^K|BXLP=ZMdT}Nu7TlEBd_TgWuNw8tbDo`wnFSmJS>U2hd8Svh+#{ktA zf0wdTcESr|47BGTH{!m7bzAI)nLWny$1VuHg7|RTl*a(n&Z#pe32>LCSxVxuy8=Qp zfM;A0A0@c=Y+ESM!|zJ`zXI?4zivKx`B!W;6LmEYrMb$#4+;AMh@{P*VQ2^p5IYr} zdgu$>LJnXfJp?n6#-at_qT4a75&>grgH{@I^>{tmYTY#!!E+7dl^uZr(W|IdmdMij za7!IECXuFC-19idiV3`l>II>evrelQhB9D$>!H~Pgqbtis^M^y=Q<~w?1P&@Dq-zX zP)v@XpJSpLd`mHsK+t6Vl~4)BCVCj4MeYtVE&8S1?3(-_Iie4WaKp+qHL}n)*^qq|(5Ht3bzB2V~; z65Or_jv~kH{4bAQ?De~asp8$RWQ(Pkt;Hjaq#T91qGsY$ZZk{9_k(h8_@jL(q;+P@ z^7T%{mmk1MZtop9Ql8BM){vT}{gwM^5#rsC=gsOpac)pMpZbP6vgr%FcXH!CNDSh) zNdGMmhuY5sgIBXOs`EM7=JH~o(Tg%$ZYXOXZPpaR1DKYm22p7tNUF=S2-G@oT?#oa zvbxMinG@ZyAJ6F#SR&pK=?M^Pf^Yq4*A44-pZIv(6p2E*F*12M4q84!PD+-8`(WV| z5<#L`J%fYFk)ztIx<0|H*kZqkSzCd6r01{H6(e}FF_$QTV_9!Qw+ zXqE?!6UKX3F#h#hTb&@ZsTiqtK&%7w8-ExI^$sXTT`05G0lHdG_QMQfy;iMX4egaa z`F-%!VsTWSPic6P2A+kHO_qDy7HF<>*ELlplQaONz$7*tcttz8c_X(wTI8+1>qRXE z4lr6xGQzsGqr(QW&~Gf>^=!))bUHzPgVHv zebiqa8ZU!_`6Vl{C*}WlSXuljzvo3bK+MqlSmBSFz=_kK_yRM$BHpJV1wU5vMX(#V z`1SYIa#jSJLe=&Izw!+X8RdZw?%(Q{$|o16x`NNDaeit@@YBS8+NBN$f+^R29M6s` zPtRnjxJ}?Ze7w<8fbmDXApB#cSa}URqCu331eCC8<{TAd>b*TI!=JiX`LIHndFn!P z<`oX@0(2=nv*@B+N+5z&I(`$~c^u$1S^iz$W)O_4ReYs>K};324Z){}&U zbZ?!=&qzRT?aANTop0Kmkj9`cwcF2Rc&`9YX21{Q*NtZF*e#+Jw5z35XJ6c4sTEmx zE5;ia5OZSpVmnC1I-i+uFTf(WTf`)*Ma#g=N^l#)Law6w)5GuE@c{Gw&s{^doyb-Sb(vKo)TaldeZI=~GwQSiL@{Bjti#!?EckT= z#cQQ|F!tCIQ&N`RvMkAt!(l2RJFxLNsH0g{GfuO*#y>b1@t{zeEH$ERQxjNK=;`or z03Seqlb2YAIcW#AV4kN`CWI9|Cd-8+A37xuRU1AnARmOCTqNcGC+DfQiaA@AX1O6& z0539K31Ix<%8oqvF)otbk-?p7Zmhk<4(mv#`84z;=fx;gIB;29_e(MhMxLRLqY|@w z@!rU^MiqC5tyZd8gb$k<5icjpu6X7^K1il&U<&35Tj3-2i@>dJL59y)NXf_$+0djW zlS(U-=uYXsB%_8zkM~!VwfX1)0wU%YT$ai@*&x$5M~3|8zP`jE%kZ}D)npwYuy+m+ zHEFnL$syThQ`Nc7W;9mw1h^XW}7BtkC z<2iZKNqX|RZ0MB7VLLPBX57SnQTpGvCkhH0sP@4vIt$9Z)F`}FlJImtT{+t158c(?}GWuX}8f#}|DH!#@GTS#vvK zV+XCJ!Cf6p8Z6m+rb78;d(pmk0Ncdo%SqJx<}E&MJr((o|D^BZFw}S!9%lHVrrjGY zIr|7X5CgeHe_6n4^Z%vH3Ni9>#zeG*`j}Yd;ELkkSggDphcBxe8jHj^+Rt?5L!x-0 zJk-%QmDa_L{NV%N#D3SSm6!P8aMAJAzf^Bq6I=a ztDwcxgv4?4Ss4D{NLGJ%*)*iLjrCpqojdh^AlcruyfvyY_?+IHSs_ zIcdd&*)lQ6kV~#ItyU8B4^u|Q)fH2nQ%LvOGA)H4V-*jiD_DNTA(4;3r8Uf0h3avB z&p(+pS`wTWV=uxU6=5391WRG6C5ki*4bm!S6dtp*n3C*{7I@`2KogV(T#w`^@^Y4cy3OZRDsuZNfK4xCws$5+N@u3xj>)cju zo{wxQO<#Y}?}n=+r2BFc*QTZS8K2gt0Ou;cIN0oSS<^CIJ-%mJ=v2-xl=<4Zflw-J zQHCE{Y?YmQE^~$+xecKU&d$BVu0T`##Dbld;pqPRI)DG38bH{4WkF#|s+i46sO4TE zg~BFu5F9l^3=+hih4-dw2+tRZyRbLGr5Z(FnJM>N*>k7ti3@8XE2bM{laQ z-k6hTJPY#V&oC>7LZm&AY9Nti6XsF2Q`qTdL!jMQo@ zKTL5*T)02@u*RBm8f+O`n_=p}GBsULArR^(t}xTmW&kHnU%!4mlyCvdcpy!T)7)7VvTnt$^3xyRH2xbrek&MV?ALMT&-fPaq?F)?3qyX`9_3l zU{0ASRw7JR-13R3nW%gqJvWIb#P|yRy6y?5biI&|c2rgE4sR0W={gD=65Nd<%r0*Z zOH(L$*IK<^j)|H*q`PKGG2LLZ$qN+Ib>`S zP)c1z72{<~EAfADw>Boz&UcC4cpctU_J#z3DOyDG_Wi*LB#+-TKNxlFPrF=dt58`6 z@BZ?)?b*PS$w|6de=|Q{#7uP)z;Ys{M&H2(^69|B+v=%;fe5Q+(9iiDe6^BN)(w~s#YoBXLX1fZ<2@(k89Xf%d#Naj%l+-6#* z*kgRu*8ttZD`J>Srb6z}s98kY1^$*bbo$)^1j&~dPIB}%;oBBgh4pHIuup$n?3Wl= z4VE=iFRbF!z2j2S8f{k!O$}qhSjT&Ob8^Kfx9E%O&bo?M?B#i=Mh*D7RsA{SS%}OeStM&{zp9=F z8^W^X%r#DxK&$$%=C0aS#BIq4E?ISyat(bRkvAHl>!9ZT<|txvsHHgTX68&H8=%Of zv*4)9K^D1fGCA>uPr1yNzEqZX_?}fJ)Jjtz%fS8%{w~KyX4OQ4Y}lNA!=I>F)|((Q zG=4>WnV8gz1nL1Rio|JMO&RLozySfUM_dTA31cz;l5s5htN zs-><GBMFBm(fA`Np%14qsB-R;{KA z#JOJ`Dgj}iB1c=a{j zt?rO52WwVOh}#E~8}qzI2#w@k6{51$zM_~F?o4~?<-Y`v4f@=w;nl@YY$9UIW6N{8 zfgFOi`eCY)roK716N(bitO%MS<825gD|SXU*(t^_Y~9#DeXw z9^9rHg5*#413by(R>(77jwCt^(G8?>?EgaQceL68uS=lWa)t2atI!*N;PYzol2gdH2VeR5^h#-k9%8`d)g@^`UmlYm9AN}y=IjK|+MP&Sm!aQth zwd`75MdJBb!&>8h*C$uV(BadNOw;-gXHQWGuBbgu$C>LLwu`7nD##bnWVimG7-Tin zp;OPO1j%_2+XWn{29By?l6j63E!{h2Y`R-X&;+6Mk=m-7Gx;{0R^VomfyzXO`(Ls*K>RzcLJVbM20YS5qd4$3< zz|&hX6ixZ>^3k8~2=W7ksewsz)zhC5;CROU(}erIG^&ca^y2UdjoqsWzvcuhc4mp$ zt7;`&(u@pf73*W9Tp8VD?DxJF z!3d$rLM~)3uTZsH!<@s0gkr}Xb#uHxfM8XvX<+Dpf@o^>o9Zj$z9Gxsd0x9~yuKaF z&czrqU0`J+PQ(RVsfn5-j~9!n#oXVr_~+3^*}-6vn66;VwAO5{Fy2tq?wV>E_KLz9 zd)V*JvmvuY&9MBxE-<<)cDA7Ga0jQCx+g`$u;emx^C?Hp<}{z{Y>2bK&?qUl#HmPJ ziE`M+ti4Oyq+l76gBl=P$Oy$nvuG?4Y377P@TFwPJrue%7Mvzd57LEGZ&0~*f55uQ z`%vZAEv54Bnp~Q2_(~xoSZ;F>cdeFa2ZcnFN1~r8s?1O&5@E3Qnixi1Vh4I9DEIj9qq-0sa_ZAgp3cpw~ zsr=B-RI4F97~E)DUM!0sNB3b|;A=WA*CTl*d7O zic@~g_IwQTw9G<~ zT)F*^cZ^^6p;HGg6Vl!*v=~+kSad>gawe1$-CgmYu{0`+k|M=-|BrcBa z-sIwxvTduv?_TAsm}e?PS9rBN#{f0NiRqONz8R(!3Ickx>5TBpv!Hc@$x&KJmB4vd zuEHSLj)SsXj$wmYcSY+UWKEDYLV}57vEP@H2SLhpZ)H97So@loBvF<9?1N5c*~(4% zE%AHe2QCFCei`pJ=X2DyCvFgeP`PBgFFX5aMY2)-M0;x~w4G#k*oJMxOA4pPnBm!& zAo%Du&l?@IQGG&(tg+S2vhb~8HAS;(M)3K*+o0K#ot`KsuG+T1YOfkjWLX*OOXS^0 z*$HwqJ2JYT_C;v(<-x`&jREvTh}P*t8O&01l4C?oIjetA=qb(>*h5PF?uG?uT{jS>^3Aw2120^!Qr zWX)`$2(fZIPydIicM6ZJ54MM+jyXZcwl%SBOl;e>Gs(osBoo^c+qR8~ZQIGe-*e7) z@$I{Qp1$bbyLSDmR;{%P(~=_zn(A(fB!hpPe;;2*Ii3Xi9{L8K+uK%=(Gi`M%!=3u z!Fp9gp`JOvbA2unuNC?}+U_+whz|+7eP5Yb0{TXRi--}*7^Q-6m{c;BT~{;ofxQ-% z{Y#h^S$n2H>wCr9s2PZW@j7PBzWr&18ro^!QUj*@E9H|O2!_{?fz-Uwo29ldPLd8m z;x<3K#23x>!#6jPeRU}8)fmu+DlL+kB!LCN$cew~N^q`e$$RNsK;K7>S|tJ<_;W6| zM{@T=sNZrbRV);dT}t>cClT+b0$wYPBxXLD?N>DKU#U+=dre!axHim4ScqX+&cG%! z;nd#%_-VO{HZzEEhM30)uQ|svTW7^Huv|+oD{JI{_>A63qc9CpU~JRhTKXR=z*KS* z@R09_rH-ulHCYI*zl0T3g#2<-+T zm)QubcCoV|aE9F$Fp$oP2&Zt(jNCXt0xs9or&;o32>#59-h z+0=wkT<>&$r_T-r%7(z|4ii~l&Ec^4+qtCF%&A%`hd?a0L}f&Va$ zSd9NB%*+JPeBea}Mn%A1LvY1{Xa9sAQo}6eC3CEDe}Ii|bB#Ye&UbEj=B=SfJOW7g zR46YnYvm#6nQ*f=Tr0yYxLYje9oEBnzx;AZU-FItRd!8$7F7q?4Yi#{#o*2V+S;Gm z@qm77n#)$}-gnU^I7Yt>8r`nkc-wWJ?jyhd1!9BPyu1tpQI69L^7FQl6sJ3t#Ec|P zqI32QfxZwS!J?y%uu-j0z;>29)Kw-5%9RtanD8Pzr4&P>AobK1NB#C9W?ZcV6nq}DnF!{?-9-;VJ$jgxLI>~4Kv^kI50H(TG z@*qvY<;*8ID*AkGeXwzOuSTQn`RRuIK|StLl5e!KxM|X4fXrvW1-f|y+-M}^rH+UP zxNLNh8gpj&{_tIvM2J1odfSe**6>F|ty{{5t3A>P8xc#P+ezg6ZDTyYO5PXROGZA0G>Z!P+TTwvFc%}D5~ zAMgI&`?F$GI!od{?bs1*op(1}veIz8# z=(FPhrIu*nv0>NA7FXm#nl5jC#e5SD7Em^&jq?Vdve-84CyA6iC@!5!+I099u}Bx^ zVKougp5TXJa8KAW^eozDkyjk$rVx1bvrwIw2zn_T zLK3wm*wBa2O2=v8%)Cg0Z<>1HYCFx1pY@c5_KUMgIV4gD$)tr1)%jS>iWO{-hfr9LimamvifauezohP%)0s^V;S3Ie7 zGFd4KbQA&{EtB#Az9}cJLivHJH@KDJyRon!gs*5mk5B^isr8>X0cq={6@wz-FBguC;kZtZ*$4R1~A17^BYsZ9?s^LvF_| z`J3+eZ|=S&7u-!nC0=M^D=|KAZ{Gc27YN9k0Y57+w-4FmkM`xWH;jO1+7}5kfHZ?#HPSHF01@Y7QWMYFD(9FZ}ZeYC05xxJbxI zhcw$Jf6Fp!tJEKL6KnU?i713(ov6#;jWBx()Od$mk@%?F6t#b!)r+q0*#(rLD@WtC zQsWGWTm6bvKlbmpYm7iSEA`lRBA~`uKyRg}-Gb0L<(kBzqj!W^|6RmycRQb~PH6f~ zaS;&`ivYhH+!V!|^3=V55WtSLjbyZhU~4IYE+a`8ocxa^z4q>s$T>XpxPiu0PK+Qb zwy$P6=1sJP3c9D@LaTkH!S8ub#>SL})iF9S_z)8-($5Tcjz5GSU+zACI0Qh8hFy|G zPX?clPpwJ3Ch0F?|F4Z*iliTYTjbv(6y*>q{{*0hY+roFo%qG6I^|Y?k5)|T)KFVH zc6jQdp*}64HYVCQHwJ=z}7IOA*$$3it4C;_<4E}@SfCtyYpzH^O#)|#N zoTKOJF|1Dj^3{xAGvi@=l|+QJ%oQHA+Sd$6XFoAE!W|#vL`(nks4o|W8KHKq zUl?W6jhXZI2U88-vQ;yIufoQUUveiDfAjPMiA+2@Yh)4Db9`B#X9Q=Uy4h@6j=Rv# z*I*VY|IGXx4thg}OmWmjjLeTz$Ar%C8EIj@hK4MQD@M2VljtVcUY0c3;5lZGIph=g zttp#f`YZT8DPDh%B?94jrdK3LjLw?(0$)m!TpeXpKx(@>8Y(*%o4@4un31Fw&VTTR zG<7G~&G9o@^Q6NEMvq|4MR*0qy#(u!N46)}IsKp?HOUpkRC@>TeY4WRfA{l70R7G4(zxf$z$?JO>*6YBiAvLI}q4D zVz{E|_dPGMmDN7Gpu2gft9q`a`7psgZ%qV!>93TqQBR;rDwab?J*LMu@li+AhgXad zVzV<#&4|9aEmuC%Zm~+I@3w2EE+Ru1Eo%|zNPbXK#D?wA<8CuAeA9dSM4GuqyvSO2 zt5xj&&_fwvXzN7Mq&0qZdxMi|c$Iej0;{qn*OjWbMj`pko^18W;WrqmbCxaj7S=^h zQ1q7xqS_QskP2u2Otr7n&4-HOSgOqS0%II%YxjwnL*(m66rlD9j#+bY862&enJc2J z5)68OV2>e%8s5{!DB&YA$c}RM9jzcnf^3);_?sE7)a#8zZc#uS+V@l zQ}2#Mxj!tyScx@~elQ8K?s3Wk9YlOOcqCT~GEAKUeF+J9j#-XRMH2PD!eY86O$FrV zi4oHhg*1u>G*oU6g+5m-HM=CIkj3z=zS5pfXRS?oo|u$WnB^_~|DFAeLSW4XtbDJL zM_LnB0u#iS7w#YG)wrn~&LgrcTi$i)%`lZGrSq&%##_YLec0jvpw9g|`D01o6!45J#)Nn8P0YWLlM@~e z$Z6?i#zm$dF5X6lZu>qs>u3b->2C%E^9b{2+c~k%H$r$J%T*ddQ!@v=Qz~~$s&hEWGdX^|xM8ma zhrx-O%#CAh64(D9tY3@x#uMbf+ zpXbJeRYVV9CPy;hwz)ToXx4YvW8zC-RgHJ7#lm~p;Zg8O;whiA1xRqwhHv!`gx9n# zAi&Qd+%F|dSorG=3tDy7TMeL80SK}C4 zSr`vk;0f$IAbYQm%%$O3DDW1(x7Nnu1`V~lsF||15blWyd5{EDodE4W{@WPt~ZXKBctVs#xBx;@N2;hO2T zAH9@f5|aLz{5dkD7e`+^>zUE?M02Q_zAA7{L9_^!gc{!np+Xv-0PgI=p||8_8UYdt zDyhP~!>4_Zrwj35gl}FXl@~VmB9Ar7h#ki3n~`I0l5{RjV1UMbtj`nJ?AWove?<=X zgGY~(8{v;XN^O6fDbh<|a(rZ8QxoTLh4AQIBe!7YDDl!GDIFB4^+;PVsj|Qsdm_bK z<%sEO8?aoJv}=659(ZXzF~xhqai1ztg#;HqU$QA-W9>;AuTR-@WFjOSeji*BsTVE+ zU)N3?9gmJo=Yn#ddX1~!KB<@V!%^7Z-I8*EUR?Okzmu$Lk)O!fD#!Wi2rW3;VdKY$ ztV4wduk268k?4WmIQCyZs?b#d1TY0p32F#(K6vuX%#LJ^=C0fcRS%YZs3h}*eHDQu z^_|dRlrg)8PAsBvesbRZUZk1o!$BweUKEM!|8gK!@e;StXABYFG>VOPIE+8m2td%E zUvHlljj820JyjH;FE#T7_=z`ukciY15spp*zUH=kFjc(~s854^gOO@K%ew*mi~&=~ zR zHH8A8kV$$S{4+NThifIl){IWfa%wh%!cW=j>?7^75< zb1;o<5wMV67~mfo`I5qC3@g{fPmprt7n%&$_w?f?U=SPV@BFNKg9s(8kh>?G0+|QE z(zSCdmU^a)It^#Y0zzAEvudT7h^->Np`1{Qr`=NyY+)D;&_b#%I$nQA_LEYH6{8UC z3R3>8XNGphT*H*dH;ne?KZg3|rzATBSM%D9jtK&0Xe-+E9nHO~s~-egRn|W6_P)0F z})u;}A_4&t0_OgjkBpg*5#fb>UuT1<}g&yy8q z`@=EbK|P?h%Oz?#9dftZY-(jj_$`=t6bOCN<=+PUBw^>eLakJ@6-M9d<{he2%4UdI_pk5E>`hcc0{jj_>3p?rpll02MI!3^=~E%Mi!G%+$LX zrN_^r4@`&n61#wwh$ctmfXbb;)}22}f=?h#E&xl)B@bFUw=}xs#ztZ3sT|J?24a~t z39e=h{Y!4ShoKyO!JtV31H8!QL7vc^R4G2d(Xg8b4lNcfw}rHi$+z#+%JhLljIuy^ z;jsrjec7=WT>m1xKCA(M2MxFJ)N_k??56X}{V{gJOe4L)amy3)l@I;tQWp!Xz|yh` z*aVk!MT_NyVU$u%7=C<<30-G*T|yY?>glHrY)Qm9VFl|dof{qLanOw{?stUoc_hbJ zP)X{A0Kx5ArX$A@_z!yV{16RjS$9GD#>+;gNV$#}%&Z5N*YBP??(C|(u;}ntio>%= zP^XH~Srz2W;Y4rfO1QA!AeggBCma#2&_=giOkqO*%Hc8)^#438gfYV>fw(Z!r5Ud2 zMqEeEk}>Qv4CRh-FF~j)p++>$XdApiVAh3AU!36!Nt0&hB`^6F1&t$@!O*uC+)H%f8_tXg69LRBTWRZdG{Ltf2NWc=9 zh#Y+a$cp75R=;r z@OkR#>DSyFM-r#@CHk?c?s?4qn4h1bk0X<8h8vwJ;;usom&9F?^9R}n+my_Fi|*Ly zM@sGsvS6VtT7QV91fDn*!RJqrT2)9_7qUHE-$cXIFjbk%|Mbj~P~}y?bte8jx{tVk zxvqWgPXl!r&I3Gsysq=wn-{%GpXSHb_6Gj)nFi7DIRsk#D{t^sAgr_Wwr`{&H7?ch zW`)VhMcAU)9Rym@3-MF|c{q`!awub(8;BZ__ctocq!F(tNN)PO-Wt9Hh^bTrsR^f) z+Mgj3ZscXI(`J&ERlMdLG@ExI!W3v0UxT<&FV8W0iM;0zJJ=gMs%_&PB(&Jij%X!M zM?K@AfK~kG?*&@lT;bz^69>z7%Ym(796sTa$FW`PO{e1%iYS;EnI!b6AVUKi=VX4g zkK_}Tj4CZg2VPw4%6UD!jT32euv~1ysFE0@a{#lcKNRAh2oB#gWuL7KuKGxWJ1%Bu5C=^fg`$6qDYPfZ)f61( z6V@4QXFr`DYIk17p4IjhG>=YKjZ4kNPt0ui&5KHeHAM^Gjp@1~-ary}qWWFoTvCx! zGQE&W;gu!N3pqLk(NdCOkGWvrm0HEHlCw8PFhF72d`Xf4ZAm zB~zxrJNph}r2yUlo=hqd?15NflDHlc9(`n?x%5CqOg=~#Wu!H5&)%Gmw6rh2rKbwY zOb&hOjHU%bgog;=d{4(6avA9G&5~eHvl2@9Gn=lb=vw|4i3!I{MMs=#iskn#a~Ora zbGVMRX}w|eGGe#DJKT5}t%+I@mNt@~u%n65TSMm}gM|2|h~fzbvyb4NbEQX4^!s-T zYBJ-Y0JVad0QfAkdl8B2k#bGE%wuw@pW;VNdpi7kh(P@5e2@v?2r*D($d?2%QuQ-( z^oP}F@%ex1q*#pDSpA+B%jegUp|~%Pv$^5#*;<1B+U}?Qb1u_TR{}F(UpDW%SyM1v z6@m0>mcSukj~(a1S@pa_%S6Y!>{9pDJXRSxuK1o}fko!;oDRmE?xB`X5QNfY?a#I_ z6MOTN2(!um*6G1b#784|lQ+u!GoQO@6COS0gir?>=_L>g(LsG_I-H{~i1! z&7$}z^v$5sU|e!a=IXBWc}Hn9d#QW1<U|(wSys?A;8u2NIi-A!EHOMQaos_-)=T;9bK?2nsIuD0gsv0J9?*Fo zcrPIIld19Ztl-h&EJai;Z-CdVxm~==thwvxXbAJlO<-b*Ao{KFiI126&gAh3F;9@y z>)CIv{c7&ff8z5zAVV;{bkrrkWSzG&gJ$B3HQ?IojjqJJISfJ2IN%Z5&&DlQ!!scM z{nM|`Co|QdOQQRde=5AJ%A^Ow+xcCxd0gS=;rmd_YsON*=fCHzgViql;!{AX;%r(_ zQAiBkk9Pn{cY}$x#E(pxG-N9|rV$a%SO^kFxz+VSJstkYdS;0Xh(fRx`GZsZOZW}^ zc#FIYR~Z{bVFZ*qmjO3utQ6xi=ZTV19UFP38JX*0XVLSKNWdG+vSJ;Le%6tQxqE@! zMnlrRnTN6gQT^aw1&nl)`sKC42x}^hJq+BDtitsk4p=v6aXqmKC5(epE$0yBQot=- z$r#4ND>G&@u6&j!hP~tLC!q$6#(RS=QwB}J-<{p8{3sj@EHrsM>VBL<1K1GdrWaOP zfhZ!(wZd)*q+;~)oZ2F8^gr5hf3k7c%el95wUt$(Mnr-_((YnzD{u?)5gDaC3Ir%1 z!IKHgc=!CuEYsbZIMl(b%(#IRqx1!9HtFxdJbBJl5ef;DDYCp7KYr(kP z$$$U(h+akiMiNZ`yI(lbF>{3unDpZOQA|*D$`W2JPod1uq1FW%o1uiu6>T1DuaoKw zF_aWcX4)XFGu1Y0@=I`5eyr>0;#2V6>rBL-{9;RRDHMh})lzn`_-8{k@3H zV&geWQl4zX<cka=*U|48@|DJAo-uMM~nh)_0EKA`*cbR^A{Pk13rBI z@!O5Q!P@@x3c{EqRz{G#itBfaw6}1`J%k%Y=_QfEyVsZHY5Xz({E4^7C2m73 zkHM&u#Pfx%fQo{&bMEqdSoUp!BC0asm+U4Ay#9@EjE&y$zDpR~T8 z53fiwxp8YbJ|RA{V(-C%QQ03Jy$0PIUek9478f%f;GKf}?S8pPIcMGbcS{=OuQ@4v z&-puNJD);YWDL-;-UVHI2{BY(W6u{0RbX8oK|A8r*ZN<`M}7}`DQ-*~x)p*&eph*6 zkLJ_AvSA-Wp+D!I7sHG^mt(Kd zkX7-sulubH0p3ZhrHu7}iY>dNzUu95b-y(QyJ>>DdEK4&iRVGl^Z*P?@SN+uYejv6 zuIHFb@c=Xdhqx|_>L#!f;fOdJfjyl=kFvM-`D=N_NFuz*W0^h9lEdZ+u}_>ggz3oa z_nAW?wXr_P`L|A&=VFEzb4v|Hymf*0i{Pf`B;Prej+3o9`$Lopf4Lq7WoC)7wLo&FNhi2}JZ zpb0e^$@=8sT#XSrp3o5V>Bz6AurcGo9_2*QbZ_8(b6tWRyU zUdxx_f~2JMMB?*9?iVg62>r>Wi-`sVDt|lmd4sosO;^33W)5OZ{4IBVy@xn=Jupy% zOoJ<7_5gGhw>;ILoTz z?HCCd48Krx0SzV;tRg5ArOjufw4X*}j{Mf%3GuZwCN7p96&4YU6W;%R{Z?GbIm&oH z+unUKe!PFwqPJV86+9W?#^38X@Un!mH6R$ zOhT5}0O?`RXWImCrSCkxO5VLU@SB85ms>x#Hy$8kVc*&c+&rut_2X$85lgF}T_GCO zq+-`i&lm}y>L6WJTd!n_S2?JHN(SQ5!o<1O*|R@jsjnapHAY4*wQ;zs^+x!;a0tH> z#SMAm2h#`2ZP2sX#IF4hzm^(b0^h82yR*NUPoQgi=^1XQ5;gj6^lwj?tTBk&#h4>`|1^M#^RDS6ncDh@eZF2Zd&hJru7Thsa z-)|}jc99E0jA04o)6+{%5b(fzv*iRP>J{Me^>j!98W~l@zk;3 zYtc0IR^(KqnWle@(rc5A#($HO`P9Acv$2rQ9Jpq%@!_O#w$bXxq2nkQ_z-M>_vMkZ z)K7~Rs+M8#!t}}>L8Efhxv8<HB7~cjvGy;L`3-=KJpa zWx}kZ;E|s-G+qA2N6vjTAM(V%{8bLh)4ZVMuGqHa z-F}y?;T6!G6IKny_(B#BWHwjhC4 zsp7a#4sq2p+It@p-WJm1ue;zJvl)Hz$2889O-W=03`Jrf{VafwkzaUj9=>6~`o+2( z9qRbc zeoU2|2OMl(BYdR~j#n}J`?;Sb`1U>d81U0fgr~8;R5kk7_D3NB7oEjCBiyV87oUFoVGuR1?H1iIe;hF7g?n-B z6SL}!4&7~ed%Szm@upv#86pm4`+yzv?{_fYi9X2gO0I8C2XoG6JT^-nYPXRQDa*fwZ*$K_$I{RM+uyFW#96wg$5h2bKv1^@W+3asQo9>=JMql^X>&D61SZD zY>URJue6&eK{>+Dyk0>DkDR-7#pkLQ!Qj-RyL^iZro)}1@fbP*+kjVt%(xn(rxNI| z+nN3KHP_2Vl{Nkc%87icXo!Jtoq-={gd3i?I=34Cx;$UhUK^imK7v3sB7%l?U#7Oq zfi5#<4q?aD`M!UN`{m+dn_^t{bJO;BrfY*olDEY7i>ATx>iOpES#QgaZyXB&QEyYr zEe@D41;F)6zbUoX@8gSNARGe)W%Gsh>T2t@wx~oM{oA>S*@#Cd7F))8+8-P5sB`kk6j@lwkjG^^>4W_<0k$cQ5B_4nIGyod}a=S+v}C#l3*R zX~22qW&7up-}nN$dOon`Z3y%SzIy#U7Hf$JI^NJmML~z2P|BtL^Q76~G~v3hTqlGB ztp3Yaeu>&6U`9~gNIun#`O)$XG!Iwt>rnImCKu*Y;vonsIu~}_R9-c2E0#yXsB-aH-1I1&G}?5wAvV)X~3-5 zf5F8Z`TmT45nTS-ZavXDv#{4_HR<86)_4|IGYO(Vl8+(9we%`y}Jc?RbbDt`0PxHk?DEfaFa;VxeLh+#r z)a66NF&dC3FR&&w;24FY1UmgCnF z(ffMKZt{z?;JNG4Yqu<%^_FeEW4g`7hc404S2;Byqc5nK zfRS&nPnczmBj`Aa>Obn{^W9m?dg>bUQR&pX7FFYS&()OqG?EaO>?IHS3z0P~jE)Ve z=s&HV1VL%ayNqST-!KFFih26G!n7_dKbP7GAY3UKbnn!`4y3C8PtaWR=ooq*Y=Eud znA@%}yP4_GVdCDtw%`0|um=n{>5MelU_+_xuX_V2Ww+;PV>@xqhMZue; z_bSNa*-UaTJ9(vN^{!2f*>P|doWf|m(cUmE9rT#gac}*x8sH@0TXeH#KI^Iaew~xn zZ7TZ-3YSM~gexb32FbOz(*2I%p`)*n=aUfaxT>nQ!hjp@lMg26%{L@?mu=uDXaN3U zbX!xxk^QBzcl+V`3OWbY28q)9o{MhE*>q5<1I%Fey1fm8KVNb`oLU&zzr1GWgKi*} zD_O+^m^-(Q-iS6!7&-?1j;5mx?8i8}xINWK=Zde9g_*b*cpv6IDHL|P)?T(zCWxLI zdbvkGE|WKKEIUADOOF)|C{uYBJxNqMPAg3Ny5A?+y~gO=PExsD_UV&@9@Ki@i_91L z)5ztm=w00xi@)>Q`x1)$l$qKA$>eY^itplJh)0iO$JWa~ilvkj+NX*0?6_YIG-25i-5PTn*t>SBc)tOkmC*B^yez8G+lCtnQ0-=afGFE#va)_h|=0< zZXZpV!nD*n?>=}D8qhXOGzKhD-|JT)1rR<6{GE3j8oQ-*#27H^CsGiTrq2+V#k-|k z>^*&&wEhL_t5|jynd}$0h_kCc!a#PCWlIq-! z!wY~|d=A+siLKe$R*cT!FMCNEOm~A^|B}8j$pP~3xv$tgj|ky`J^1B4al%AbJ?-@J z5~cB-Prs)a*ajHy(h>JmBYy2h+!W-|ZSPIT7<|S&6@M{z>j=VFKaXuQac}Q3MbjDV zer$~Q33l7KzmgmS0%KlYm&2I&nY1XUpoqzAOV&{=570 zN4|j|j`yk;(POAo+LHZdU%%_y`Z+dVYXoA9S(}dL_r$wT$j5#tIf4g>Sozqvfm6^+ zNzs{4>57ys7ISMCLC-W-(Q~hpZjQ?e03LStt6s}6Y3ezq^KA4igxsGFgzzAT#8%)! zlaRdu<@fT2J?J`(;?(U$(zF$q%ijZ1wXXu<*0xFK3!}|(vk~IPJ>7?BO^6!w`i}ss zDOg@X{GnMUxy*r9@6HPRrFd8x#8G>htgz0NP!=X5bs5>LNC^2nHlS5-c9bRYp>uSf zx}fQ1N#aDTTo`Nx!_q*{ZXWA1>=BFtv1C?tib=Xl@ayXfxfRX~9`r`$5m7V%NX7oC zX)4Re*Px!{5={~J?igMCzw-S)w4SmvKzOvy0hQe-r$ND%V@Q|VE}h{*$w5g|By`1t zzu{-0y{|ra=~Y%e@8!}X2(LUXR_(`nJXyJLxAti|U5hlsR%^HH=N7f|Y;`iDtb^P{ zPd5HPl%&y5f?uI`fE$E^wCiovD(a+qLwG4r;1zYE@8A za#yFYNAP>gK8=3iMFNPi21?T0ZtPKqS#@iY+V?Jd@J)<=!8$#nd=cJfrMmy+UGaqG zBY8qlr{$xD8!&B)t)|ZD!<-flYbBGeY1>B!3rJ0 zlbin`7#aBV?yVE)?U21h0On(74FeBcz4-Bn9OTaCHiIseT|AhD(F<&1AdAGXcYkJcIY}HxK?CRtq$;aS!PDXE>jFw z6s^@8K=U`mr)*v}i>H;X=B`F8{?$6{mi(y0&h-(T!-v0aduxi?TxDnd3y5m{b$YMv zuXz(uw6cF!FGfa9*6eEu!mY(MPNBlvL;a^*TW^6Ul)(OO~1OtFc3dk znn08| zTOg5nqI7n#s_5|3iA0%hcHyXJXgMDzHsgxFlzfK1haQhOEcPjdx3(6l_2e1-a3TZ3 z#qL-xG%6F9c4NZPgs-NqMU&zD_s0CoZ>=z(^Jw|8wCJ9Jv5_T1p;TtUA<_+|0+-q{ z+WLh!x-=V01$vHj2U%Eu#4Ls|w5kLJW6OMO4YdLC<4@P@Tqn35*kYL>jrbiLIwz}s zaHSKtA>S{gK?#3fgbVB{hddI>$x>29@gyT$J~N?WjC86#y=Uk5V;*-@Z(%8vXbp|J zmFQxeGK-sjWt~&}wHse5SRwQxFFwM&DBZY2=0(A%J!789L@4LDFo{}Q5Ocs)cb)?i zS6|hu7t%<@%Y2`|hT*8OY;iUmk|vg|8cjCb7{1_Hr}Q=- zA?}<-YFk4u8rR-9O1xv{WS(Wv5F}uI2*< zitwv;VS)dA*0|%|VPSfK)EBtK8Z#()FrI?2nbeN_!(HCfrqf*616Hkoh@d>a;rt^+ zvMcl92akI{?Ft|Dz4AwS?`)U%AD&U@$*^P-zjwQs)i71>H5HsKh|cuEC-0 zkduPK?(h$ZQp1n^P?9fo8}UmC49~gSu;l6#NrDkkBmsUR)JM zByP}FyHE>39j?=-vupWkmdPtw7*^>IRM}v8zGFOwzWExFRLH!ZH_QTOM^JAKRee)NiQQKT34+6b!*Nm60U; z8<*EJ7%YokzZHfeFE(9~Hbft2c2l(_YnD#LV~J)!4yRDt;zb4#p#^i^;n20BQlwSX zE~AifxmIu+J%0+3X|y?E>;dHrrT^05X?lU0q2=;8#?~6Ym2@oWOJkvy(#}RTheY(O zO^`7x`5ag&AK0*vI=E%-#iexQatMj4D@^OH(#(j-C>?70Z-5sN;q;V0W&>&XB7QlgDd{L(?DzSZj4;D<)C#md(kLZ zH9k6&40Kmu%20yy*|Cg9+uZ*Ir4Ai|fuq>C#V}EepV#9=ssMxU=37=A;l-(K`)&K^ z-KGBef%)QSi7J(WjlNIBLlzLGS~FVLkvvM%{)K8Vc!%K*07vj(UK<=lz#^z*qVroktv<*`oE@4FF52%Ka@I2}h`ub|vluTLc5ifY~u*#P%5i!c8B0 zHfL@Wqwc!w)+j9wc5KNwj={Nfn4oXk3$Wq&SM8W1xPAsp5upOQ zq&<@U@9mFTqqNFhta)%sa+H}b(NKdzE1rxg_bVAmvc8?UTFN_seYGT4d=(RyFIYQX z%RRH`uZZ70b~H=QLR%fVc}_kF7cd;p!AXH;JUBt#u%&v0cK~sLs5{f4=%04H_Jq^N zGG(;igK}FATGg^u+9?NwC!#B=$%0l38}H4>I?;g z3C$(A7uDal%I6pEu}l)r%(ak1fQNmZX$n+;%hxEn2wxy!XMeFxmLDcYfQ^CC|8t-! z8eDfAFz!rt4X{;)`RZFo3d=|0BUu0w_D;sbSd9=Wt}eZkuk!QcCEN}a=Y`T8IoH^GCs?6EJ8-#!9kmuaVDgKw5AV(EMhd)4p|}TJmHi<)CrtUH zWhdCx6Es0s`t3TJgOa*y=bM2veUC{fEAs$R-j+*nyrVK971W$zBnn(p+KH+5KKDgQ zuVW7cR2&6FO>+N)Y!6-yErlUm2_y^aGP6N5XqR2)shtY>lWiTAt$HzwA8_I=RyKFl zG^))Sg0N*h;BP>=ISLRh_#ZnNC3u2`1`kNm;~CHL1Vn? zf0+t~aib7%GhBW?93a0RIr*^To;!JUaIpC4;`4g*S_GkfU<+g6XSU>WVS!qpsaXr8 z_BTk*(|M}U#ETxt(y3d|ErH+@D5sB|-)m>e%}V8T!2@Pf@#`Xk}1_a9!rldQB0Y08dTphDn$<^zH{`KKTKpj1*PVKd9?RGW~%f1L?e8_hSk zUf08Ez(xc{KIhBf^*B!ve)hS~+Wt)aH3WN#=oG8;?Qh;;DJr`t@!m8`_um&)oHDk? zsY4l3dWg0t`xMP@xw3PkVj%f?3?iS@C=}{Y!;(KTPc(oeUNtD4#fkKIH1_@ zM_cq^7&;WYqY|*tii1$a#L~7!Bg)fF{0_ihgSb$AZEV;jls!!wSL)HHK+S|N>4F~5 zzy&QvkzB07of(ATZJS1UkAE6K0>To<6I*_vzaTDLh*~@BmBT2 z7uXh;kxca0?y?x@0D6o=1YOS4+PG#FayVCT8DRrMEvR?+5hUw?nPEV&9;Vl5o9o(B zCb10F9$)rscoUEdoa7X&$r7wgTe8D~pS!&@<&V^uFisMbA6t{iyy$xoMWEvR+$@r& zBh&23Adyj%g+?8ZObI%LFZfy_+|gSIi5^^*h?aFaSQbhTeeDG~G6Z%seMvD+6NSQU z=;j^Q=zMA}F+Wrv)O>}rNQP2g8o$ za1U5NlLWJE1mX~szJtAE+<8hHzM2PX*UQ=S~{%Bfd+cN`M)~bBZj@|afH+|y4yaU6{MLtGODniFphl)#MWG7 z3+$#19YtF`1djN^^B5_gzv<}vkZ@;Y`u-nL@7P#r6EzFRb|$tb6YSWwZQGpK#>A6M zY}>YN+qSK<@AsVNd4ItEu=`rwU8}lk70QA_8bZmvZCN~wz>DI=aE`squyItyRgTgupjuaO`1*R2E6^jQ?VXAz- zyk8Mtt`tTemIK3}+{3;0%#4T_uUD|+xyNgw znxE5)G~3;tkKeA*5o4qXEtM}|L9bxLk2>3K{vjY4@etmE9^p)F1gU-A0sFzI0i^Se zF#psp01U_Q8u~k;e@Cm17;2e<1afAH5Da9pWMS7h@fCU~R?O1zsgOYk=UhP4hk_}T z(1^`I6)Z+`-;0utq5BKBV5v|XAi3jAjXD;W%-LemKO&zmWyQ)@O-MVX@LIUBXQH

>Hc<#*gx*>p|a;BNPYubW2`%*hM%}Wu$^X1+K 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�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 PhVK+)Rb@(~OalHNy`Z78>&CVvev! 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 literal 0 HcmV?d00001 diff --git a/assets/Create-Branch.png b/assets/Create-Branch.png new file mode 100644 index 0000000000000000000000000000000000000000..8d5eef07213619799c2ce0e4d8609ed1e498bcb2 GIT binary patch literal 12124 zcmb8VbyOSC+wTjdP~2MFiWCYIFK)#t6nD1*g%I4exO;K8V!?|AD^LjT!QBb&5bWgl zp7;E5-gVbq_s&|$%&cej%rkptC*S9@zmclSayXdem`F%SIA7(Z)sc{10TA0k=xB&< zvh?_H#0uF(T}~3IdW`Y_vGdwmLP-J%sV*Mt(F_%_kKrh<=YoWU+xwpnGQ^?mI}#H6 z`B!NPO;6+F6)Zzd%V+Vkc*~@}AJNMqqBe16RNKvr=SOGt>DjngN4Xo0ezzSj+TTBT z6bw65`QHpbS?i@{ST6Q`cBzX_c{)#uh)TpPFG%-9L8ki0Is9@dx+mC+gn}I*gq?TW zIp#j*V$ahXbD44K!XCTmcH~Sfy{)CZfQ64gC96V^SbEmLJ7*z%(kA_q7J*nq@O#M# z2nZ72Sm@Hz(a~L)VgsZR3w4ZHEFwA(%mqS33A{MNco9)Ly#88QM0C5GboRd*lm2(( zt>fPj?f4G-GT)=v*d>n!lf7X*iszS7Q8it;o5#P)+!4pOBd(Nqz|ktl$#xo%3qCW( zwGVxvm{L&T0;wH)YU%>qj$OaO9HuqCxU18p79T`jvg2<34qML>q}kf^0|gpyz2(}U zmmGOAuQ~U|7KU%4`r-^2cslC>ysm>=*na<+s(l&WJ9h%-3Y?;ujfhI9u|8O$+3*K804J7cb}0P!WmWx?x2-PL z>NE0lv!bg3>K-fTx_czv+TvfyV7k+m#of1N zu=8zYCFgaNT|3W}|6`4PWsL|uC^WA7$>OJFb&&eV_n2N^Inx7Pe$YpsKr>v*CeKI{$IXexu<%3~UC zM(nXeP2En_V*~1Dk?>0AI^+vzj27rlP z$WLslD5oL@em?*>|IvQmQnk~iV=)$gIw2

ymbGoE6A{Trxew>G@q3AWE1l_lni% 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 JEomC`zX0=O4Y~jT literal 0 HcmV?d00001 diff --git a/assets/Discard-GHD.png b/assets/Discard-GHD.png new file mode 100644 index 0000000000000000000000000000000000000000..42c12c3c3be0e70c51d600ba95770c6e90b15f63 GIT binary patch literal 6968 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

A_6 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 H`qTda!4*br literal 0 HcmV?d00001 diff --git a/assets/Get-Installed-Dark.png b/assets/Get-Installed-Dark.png new file mode 100644 index 0000000000000000000000000000000000000000..d84d5b73ccea9c0ca91652e57cec5c9a0b3b68e2 GIT binary patch literal 36814 zcmagFXIN8hvj%Dhq$*00CL*BHdkrY4h$z_TB@_XXPG|{DB@mJKhI*{$ube+|;smSygS*d8 zoH(;j|K84cj{fNlgY(k=odiA8(>YPx%fCdwIOBZh@tqSV%HYfgc4z6=OkNMnK_^bI zp^pDfqCJ1SJaGc~LRCukEb&$+OPqUcS6*cl*x$7d#h|?vXI+InAYvY*%ljzdgYe)K1=_Q3@vT zxcY|y*dQz<1)K7BWqEmhxp6AQFjKwK*NE|J$wiA((%<);FC)ei@0nc`Kn*ZV;D*PX zyHkxk zf)1lFl;fX|)|tWAyeiQFh_?aFLm9qfwQBqIC>a@dNrQ|KTD2rwrQ@2Bd;iWZw+Keq znN33o9^aTWqzGCVt936~OKE-U7&|^-NBy7SbfWAxTq>b_ts3Kha&Vc%_z4x6(#c7Je=Zwy^ApN!Yfd@F}}_~w`##%1pROO0zn zR;Ib@I-7=y+j&D7UP+=)lc)8$1wwFrBI^V7AkU1Li2=Ov9?<%tunqOOrLQRY+20IL z`eUH>JypZ{X*U-`P0)I4^_s55l@e&G9^(3Kt5U&{U!%(ZrMC`anfh+|{izUpL*>#R zYFM+XK;PjDZK^OE$Emr3h_Zq?L^ejGM@Ukt6%im0j{i*v-rjupAQOc99b*U(f)sRJ zmhK@s$2Tb=dFGfZ9M3KN-_=i=<}Pc!r&V;ncWP7w{hCcs5YGtcD{FC4=~dg3Ot>$j z1==e5Am!S7Ck3|Xia)`{r82N%DCYM)&#)@(d9T`1w+q?_jGGiGl+^<|E@g(uy_}F_ z?<(0sLV6`V@Ja(Koc}wWv6o%kuay>!e#zJIDmuO`#sjYn8@tV6A|<%L1yDj?*YJC^ zJJ)D_ISCcyx@VkRxm^R|lO9+4YZLXbCByST4$sF{OIR&9!ykxSh+%8!{%IPMzq0Du zCHW0Nl_Yi^?TSka_>h_YhjfK(p@mOD>378~=3aDxYVYOq3xfteJFtt}#KH^O^eafd zyp*B^JHTN(JZ}*>4z9Vnu_^s0!xbTm=JN)%e0J#N_v`P_BNUMdF~Qhvk(-Ha==#?7a<|R$(wRo_WoDzpqVaLR`ftd zFc+36LWMD`L*x!tsbQ=#4Zr2dw>d=^Ft2-*(2*hRSzP3h39eajaq9~~`vRo0LzD~aj@zi5 zdomH1eQPd>v{gszSO%@>+ffcx7&QdyZIJk_IZg-EPD(Gkk=CA-Sv<%43l4D)zm`u! zo}(sDE3=dYPrU@BaD64zD0a448ZrwVjK7^-j#)n+Ftza@koGxc$iT|?^60DQ`G$-W zn5i4}izpCE6j-CB-YeIUtk9WLUKm%{9)GL=?}uBHC$81gMg>qHBN;aAKB>fhoS_kN z+brl%e>N?K#^Hfn|C%ah!Z0%arE{}P{3T4LR)RzeOnK-Lr@@p1WOuf)D&P^atXGQ# z><)B7fM($J-B+=9#et&V8uq&TRqW!7SLAHW1viPr^GCjf%Gn}?5tjU(tc%KKxjtWb zolxA}kfs4J`WDUEeXpU*nbX_xk+9xDc)6w26?6C56ytSN<=JTI_ zwe}VaW@A@ugyJXGH00L!j)>N?U3!ONg%!OPb`?FtF)sEm!OK6nn^ElA0*#?-w8N~f zk@yBBx6-C@yMiL+U+pnxoUShw{Pn?OfS11-AvHILdrHoCA zX+%CAnUHtBzoAgYJ$QFDOn_Hfl{QfNs{iALPpe5#jSAE;=?%)LSBrjNa+}oo9-Ti5 zZnA8?;u_0T1*CY59_~~$p9R(ndjwJNK+e#xo@|sf)m<=I2FPm&rWiF>7)ixXwA_m9 zJ&jn;kR|U<_igVV^hBW>)*o8x0=>sL6>ZMe;8Qv}RH7fHBb)*^TOG$NE=Lyi zCmI@+Wyh zcf#vX{n_Ih=jOhZ#f2;^bUC*-*gDv3CXaS`cDpua=6xz%k2hw(3Y$7I858RD;6-XKs>B&SSbhl&^+S!$n?lR< zray}oo)QOg{Z!kNl{d5Zq6;|Uw_r%Heu}E07KrqISXkXb;tpL;@<{D&w8dbgI)JJ}h*lGy*dG4(popF+reIr65RZ z_3)LkWRBv)k~#<3(KfBsE;)V)6S-G6GWB`m5j%Q9F@zG zr5BaMd%W1 zulOUC#e39GL1;Q~C0&^*tahigG?4aTHbM{1Xf%DKGFw>EaBJe$UFW7g>*iQ})qP0w zb^egg4RHs@t`4e0&~xaiKfYV`1nxf}-rqKuvD z!-D<@`yqdQJ*6>S>mmfR#1vwL{gAg{+qRQxY%>;GXe9_iDtx`zX37%1+}mIJ=TG}P zHL5-TeD1|UXP__H_!R2yJy&6dLOR9#=YA&!uwm64Ja+eySUxd#Qm(Aypb!keRx7sJ zxKcZt3>5sdCVCfNx(?+~PUUIdPbxJOjn9SidfgHWAnP4-NQ@BgQvZAI%ph+AKXc|J?J_+emm8yuH%M&E$}7k3&&e*(#bYHK5uMq0!?Guh ze>$jJqIqTdV8yHVEc?r!!Uv19Da~07hvm<*cA%bzD<0;*I5JP>=6;W7w_Do;*gZVB zst1RV=+>V{F1fM(n)>qe{_Ir6r`JYWjpfu_&jaOPT#nNNS=V{vIjj!m^d!x)j5^f6DmgrN4SGFcM5~m3|Q?l z{f3$F*+)~ajLnD*imAC63csSj2Vc!1w()s(KfBwxhtC!Y-RlC9nLPtheC0*DsIbG4u%RujeL^k@ z6Gq#%s88RUWe?*)t=Ld%CG#FWg(w6s833cf!G|kA41I(!8a`}zeMetB^HW}NGvb1w z>MS&sTv-w#Rh;e9dDA=O$KKz3t;^fUnRm?1{J7T92K!OMTEE4MN0E_gOV2A%N=L-^ULydE)6GM*&6t2lT_Ex)LhP=yY@>bt zW~KG=W67l+z3^JP2O)Pc;*{Psz# z6=rJ648Rt14%fn`hqeqe?Fz5^A401GwuUl7lYsVL9RlwS8BDF)N^TY2k3OVewO0`n z9&$XugE?+f1I}FZCR!-FRY#TZCH(bluZHQ-MT%{zvb%-Vv=@q1?kGm4QI#J;_*z;0 ziuJouc2;XGoEsP{r#=+S-nmwV)sh~=?d6B<=Wmd!kbr}2?ITdK{O>+p&%LchIjw;8 z$!bMdmfg}yQI(CA7G)CT{T}qum0A@>t*V~x)jZPK5&Trf#hJ>~f9LP&k|YQB@!5@L z58ipRFUp z5!U1X!)w^cG;czgJhiejv^J>xHI> zemKXCjB>$Jrzvyl4bca+0uHmz+EnvLuo&suA6VsV&*()1TSl8S&#|)17PK~PQ`WKb z6VFjf*j`GtB5hOXNY2V{$XKosqeX40X03Y+n;1`+#DuJa3Rp2`BMBCsjU)9qCGQC? zOScaiz9R#SRzh7}GDywBy7k&I!6{~x>XJL9H=wbCOMJB+RA~UH-;DDt%nPGVV0)jL z+5yPHSG84F3M-oFZ04I!cSo2{I)U@inSpcf-aWff!EPigi&J?dF2g|aC=PC4@JD@)R@A4%S z1FKYLJ!v@4IkE{3ht(1wXIV~i?tTkP6QFH*g^3q(WS;nLf$Y16NT(Z;Ugw^UdDPLt zs?lt@r-{3PZEpi}W1w!}gdQ%k#EMMjiAu!b=jZ?7Dh#}j81r))T}dcH*`bHBw>-YE zcpp{a_(S6Q5NuT^(AL5B-#)MN^@bV_>c z;Y$BQDHJoeG)oM(4BLEL9P@-*#baNDx#u;|a(Aknh;#{^s;U^lURL&r9;Q_FckPtF z&y9M9O`5>u2~Q-?(NIa~25&!eLLQy@VZ;G` zP+uV%0j80s0*+^tKzwlm0WT~~q^2UtwDkaFOxHCsT{~M~EL1oCoUSli@!1+# zXG`}~zj-iWY9eEbUoADSjhoK4PB zB;A7SEvC%B+#5#4KU6`5df#r6uz7m;jUo)=f5vywZDQEWA#MnQ3)vscjyKq{+s#C8 zO@lB1)MJ&YPkH_-%9tH65>v(d}MDb`}Q6-2Zi0?-e&+oYjcsqLLd z3Isow3C4E5)#~~9vJpWHN5W&o{EKnl!N(5cmrboM46f!XYpnf#Zq+=HXW#&rL*Ug$ zC*D$tNF;W{nh#+hQw6oU5%7wuWe(7$S^9L+8mKW8WH_h9A*y4zZjb5xRWC=!9*!LbcixDwcaJ&Yc-$p zeuB_I!PjNSHbJ)NIAb)$K{Z*^;`18bgKnLaWrWzYaVvambYa*=#n@C~Y37B^U565o zh{8gx8yOeha3pYJo^NZ?yxasUT(jezl(Y@rkutkiyU@y>}_%CvEVlh>^UJ44YR zCrxc?;B7#+U5svj#+x0;4ZkZSH>Cqj?<3;TAyU$0u?#I3(^W@otW$>bjdB>)9laUE zH~?oWXM)b*?y#Fla1!>=a*Y94(G;s^AmstRxHaWV)dJw%S=ju?>7Vyd{?B(Goafxd45Xw@S1_nBRB(SVo(RlFLH0tujLa=45sU6QIO~U zzgDYS5e1Ol%>902LloC{a=pbF5NUSi3q_FayupOu$g=9*?;Q7rb;%iDTQeEmi|!LO z_^kA`DIo|$S~!N?`=yq8d_~q9)idr7yu`Olj%r_rK8y^5q@p?S**o&`3^zAgF|+UR z?FS*Y4NMvW=`lT!gp+Li542C6BuBiATu#efXAj%ewR)%axCt_U(y-3F!f6O{U=IIt zzf3TMD}gT~4$TjGWTm1{hrqB@f#95Sf3vf{uCO9w%= z@fPqkXViP|Z|_)FT6vkK?M9gb#j|%tHMT7&u#twn5j$dd39BBGj@CNzlUsc0`jhUp z2D_CH)y~3^Mf-_7bG1hk0a0&NOXEWBYU#@B38C_1RT`Fh%q5}IG0IF0_+sAXPDgXo z`dbaA{2UO>&kTt7(C2~YdjT6w1rYM&Vq-n8z}?TejIgI`K|A;cgD^-;upyoR)axqy~>lh-{E?&;I-J{a#taa$1pSpBU;Nxghb#JHX; zqw=MG$k6PY3U^D-2ERuRh7Dim(p-ywKGxpIBnIbW!RiA1_x{wq0<3kvb(qlXhNHD` zg>Bww4$H`_Q*0t#X#Tf?6SO@{SR;_#10E84dhB33`-p$AP)}%}J5xkFweF(${Vd%pjorgm04qUf$3sc=x}IZ|<|Ud}505br zVwkp|w)anvzNNi_3`xv6nyHpq=ccV^Q&<`59sH|ze;>W4qck@MA@bz{h3oN+obkZL znLz4OA|p&NS?$}G0DZz?FSN6KnPnA_FAm*1gh4|nLEMgIZm%40m*nvrF$Bp@6E9qA zLLMiv2zogQI{lgfMvkc2Z``20KIjg!QDP9%+#BH#{MGAtd9P#du&U~YX1WRJj|H4J z1EPAXdyk=e#VH=?8M0y-0oWOJLMLE8J7@9EgJ=HK?aswG@T0GySf5va_oX!&M%aXO z!%`T82!HlE(5eUgU;b!9{Dole(mfm14rUm%+lPPkGG~-bo#?%;#geFFk(Ilog4}yt zBrX`IA)X!V6T7`*neM>ObB;LjK?*c}($F_O7gPGRS`fFhz4vLhB;UGhwysB&+Rwd2 zwNTC={~k1CK03r6WfmFFnqM^yEd~(#9DXz`x}YF$!PG0fwG(XZ9pc9X?pN2W^71|) zv{4LeZgyu>8dl?z(Q^!{j4k>OeALnsGlAMM*7wXf0pjiijji##(B1}2;__QJ4|N9d zMU((Om^vxzJ=ZecKA9w83Z0*(7LS`+pyQeBCPyEZI*L9r%e~m<*!9p16wJseVRz9^ zM`<;*lZx`LJCq~|47H57wI&RLIu5+ni(nDJ9;%^Py&_cQP;aNEe%Y8FI_q$+GR}_a zVW8h1!u!m;Er^^BP#|Bn$*5*w7r0s6K+c-P`z(Ao)LxYznDNbn39_j}{`&E0@Ap5J z+Ow+7B-Q*qT{l;_f)&u(N@F%rfMnGlc{Yn{1=M8(=eXV}ai=70H&HwcQyuga zxQlA$pl#^@&3<2pI!aiUG?^TGP^~i#eC0XRL%KS)*-jgAaxK^;=xOn1g&>wUR+g5S zfcpa}DBM`E*`IrT1~Z4~28}E8)BPiuF%@a(rt01^dfMZCID9uPY0(BKAgYHoAF|6* zDn7Wwh~%lA)?15I+b`au5}~bKI)PnP_uKlNQSRGcs-Br+>O5?J3xsf6|Nh0`DM)hD zT>SLBymA(1^KhjE8HzxhZ>h<6&xuE6WWQmgKr9BN4^CJPU+=B~*<4nvrbFiDP zg>Omau*Iw;et~aV1?%fDiXWnypeKBAv94j@$JHA_Sk~a%eHp=LGJ*~>LXzI(Vl=3P z9#}41G+qlrUZd_%VDosIrsnoAuidg)z%@C0*%==z9D%wALvq^Ka5Z1R{?tmb_W#*? zTI@bdQxD4&ba1VH-LE8e#oo6aL<+IRNT9F>JvQFfv25UYEkH`Y^VRsqs?b+e8-yc( zKq%F9XOgoyaK$wr<}j_H@#u)S@;bgzTXLB>K;~D=;=eojC^zQQZabY7AQ*Q}fT$^^zV`=%;^s~gjf{w>2E-^3`L;KU2-Zp}LYs?8r9MkrrMQ+X zujNCT$h`7L_xUq|v50Ve8o#}sysM25cip!sfe61udlww=UV)s$k^OM zpPqqGLOnMs+JA@OG0zI4Ey{woTHK1xV;mcHzC-Cc&Mx`d{j_^AHjK~n$=Nfe7)Me^ zkaV2a8ijb?lR7GBcjz)-aY?u~y=R1%&n9e+X1Bjnb#DT4PgD})hIkd=Og&Cvm>05Ma-&gmtP&a)if}snJ=e zVeeKGWj&qxK_xOhY|E^AKl+|s$H(Z(YsY>CFq*ToK1XT@ClW&B`^QBcTUzvlLS; z-ePL&;A~z>vSU#6hcn_>a$T{&^Z{ieGBJMN`%!wpFds^&BuskJr-!qD_WFInj9?Ji zOq)OW07p+4gd@Rflfgp=gi#I=_TFz(HUNcsvb6%q$|9;B{|x@h;6<}xP&bQS_V2K2 zQWugftaiJjbmnZ@cPK$x`LnuM_mtxyVIkdbo`|vtJ1__Y-(xhA`Z-F#z`QUyjb6kG zVax7y4me5`4{=fZt8MF1u zP!;ukdFSlo1T`ij)YY@pWOOlvA@XOsQHhiE{RnQsFtN$4B3INPT#GMRx&oXfRsFebF z(f$6FL7{OOw{o_e9KV0FhaGN}*KV$D@RtT-|Gh_nxII}H+Ve7T?5ML1qk*Z38^Tdo zGEfc5kiEiuWO|{1;Z_$Kcz(7u`Vdk7?0Ne*F5-BH=WMC*7X3XPJ!9zRj3DoZa(W1T zNi&3gC@ZrYI{NWN|Y=t)ssk528k%TKit!jQDZzlXaqfPWclma*phz zo9AG5p;?~WYqji~cy{aHA32sfr*=On%tJH%_TDv^E1$eFeL}_4j%tnvX_qZ+$LYb~ z%t=m!g$7hA-(-Hpuu%Qv$e(F1^uzWO6+sz1Ir)`d$++>#4@BVR9DZ6PPT_@c9mZlD9Pv9lc4XOI!Z zrzp;UADAKZ;mP~-T=smR?}B4*L!No< zS+WB9s)0888W=5#@8~sWwt9YUg|6K0D%k4Hw5LBS<5V_NfcA({pit{kNSK!7$a+xl&i}GK4p@qE(V#td?;nn+6d9 zWvVT+wahl_%oynckC?dn@;bWJk3yV!?*BKM_)1U1VLZb<)Ev}ieCk}S+Fle|5Td%t zsJeB_0JLSE*6PaE=%!yz#E8j+Xn1MS$b-&Ou-b`^Rrs% zVQ48Sz&fTZ$;NJI;Xj-2Q9?2SC;z+vKXp223#l>@qt) z?z|smcH(=9X6$#dy>DkQOR%&kL)lmeHdh$vn!RAcNEU^@3C{{0b?HA>C@6Nkbmfy8 z{x7n|G?+54J~vMT!5w2w zw>EkkEHpL1R$>cze&@k5Z`FpnPojUR&F18mT>PoFeCsQ&rHkdR5F8a;p{UU&WMJbj zXn88eLeug*eXi3H<&&Mk{GqCpoT4`&Pt2V)QUTZQ=Fhqps$Mo|Wy=i^GDN^>S%u`$0dZ)G{xjv$%e2!Zj6Z#dhJT5;spz(S4T6I-Z zj?-!xsaKWwMMRMG9%yxM=M>&1)){TWRq2>5CGl3cD~ za_f9;#Htksx4CBC)taK4kdxhIZOwByf(Qvja$K42NGZ0w(!?L^@7672+4iSnE_?Z% zB7IBtKgxWj+)fDB#{I<|r-<$bg_}>vJJzaA#-?#f8#wa{_)eQU8`euou`TVaxMAj! zQ``#v-M&8T2WeM^UnOZlE4t41Kv&P66M$6@gX(U1{MZ zSEX=I%}4!9ecQP%OiULA;?u(Jnl?VFbJ||-G_8g^Ng5MO;4b=aPC>-6C zIVA7#iC_t0Q;wPQ6%kA^&uQ&((JNQmIZ*EkrCumkEZteo9@lwUi1R8qV-UkuUCSH_-HdDvX}8h5oZd7$5x%ecImalrPqB&dLKb0Ns(-|E=f}=C9;# z$?!s4f2e6`G(X)`WnrNiXbeGE7;KOJBX|E&@F@#@B%j>Cd_FTpzs@oeTOH4GOVhB3 zR+b(0eXJ(ha?Qwb7J&{#*j&LRKe2QQD<8Uou%^FD@FjP>#F z{UbPjk7OL_+1_lXiG&5u>NdXn5&dEQ2^&<0JAcy$?nxAWc6t}aWGANBT`E*^-knce0? zv!~`I?$2+q(6sU>-RmV&+vA5Aoi$!Z4D(zwS^xq6FE@puuVRyZNpAyAoqTHfIP<>C zB)`G*?4`^nNqy->>8JZNeqQPfM;a}KJkAXAKU(|zf>y#M{!wcGLe>A4B}IL=?R#xd zXYBT)DF4-H5w;2|oOBs!qx_=k<@1qe(jEbZDT$4+$3*KTdvohzitpY1)sN z=ITV9+!}wl0Rp}z6w_}QG9XR5>P&LBrO>BS#4f8H#%4(VdZB#DgHx$9!)xjLHN4;@ zN0EQWpd*0}Vd0jU4_5TG5R@(a3B?RY?1o=J(sWrwWpqgS{acG06Q1l0 zSRVs~D71hwsbFQyq~pu!xOELm&|FsEXH#29h<+9*HVMW9b%5DU<(xVB`7+&UN&q^Z zoQM#jZNUET3_wO1Xkv5Bm_?Xg_QJg=nxaKx#$Ss4HPb{1A0;|;%F(!y$Sr&q|1^Lg zEoCQvE5ht-`NmARQDmI*_zeT|h~sx2*g$!%T&J&2Z!v}=?zxx@Jr|N&oC_}|-nt&~ zpd*Eez8~=MLy{l4g}0vUUAsH~KnzOYBFVA+ms-d2cS3Fde-AH|aN=Jq_Me|}PAB|d zYDTeraTf>?+FdSaE)!o*En;P-@q_W{wd+tX@?+0JDFCN<95b+P?#)JL&5H9)k*+My zN!8#bJ*uN?ToX~1GK_jX`v)0v4 z`Bpj{dUjJAa_V@xH85o;DL(%Y$MQdj!7y*zBC8((k8__&zgZ{>(#Q7SpB{w7won)R znr`<}5O6ncT!;hQ?Qsz;+0iJ=nr_Lb9-5K~e7EKa1fw3d zqwQ^Uc_lfrnGE7y;|tx8p+M*Tsph-wuEpp1Je5Qz)Jd@>j!&Y#+Turg8QG_I9;xn* zO40FAWO7OU%6G5+pJDC8X%0682-&-E04h^OI%@HhU2~d4g_JJliOK%mfHzW`M3s7B ztB~37$^g=Q$&sU3819=JJUDXOI`On&tg`C%vzkD{QI>%JlzQ4?>vl|XBq#X*yow z>gO*PbhH}L<{Rz&-uv!`}mAjc2s~ zhJ(!Z*@D~?@=P|7awT0_k()rF;IE|`VGyD18|tv5kV&kmfULs7iW0*;{52P{WlTI} zNr<*jFQ*_VK2tLc3f`yieJ%}vQsz0GiM();9;D|PY{k!2>#cI*;fcR5u`lnV&bHpx z$AU{J2TvM*AIJ(kYVBlCv=7^wT>JCc4q4@H69jKq-39#(KbMW1+;-a~AlI|=wo-OB%117J4+gLvr4 zCF5aElWjX#pGBZ6ID=XRa)_rJ zVBO?;V6cbz+HU2rje`>Ye!to(Wh}vVU9BjDrN|udP33#PL^&bw{KAN778)5$NKU2o z31zdcxXH?C6c7|2#e;_frbsW>0FpsSyL9W37<9;b`%2E~Uh+KPc&l?-j>L--Y$3$q z%6WQy8IqKE5}tAx6n5mB+Au=m;kLiJkYo)u+iTKzoCozH1XZ063z>-+4>D+t&-z|v zLk*OCu0>jwm@gyvPr%Ca3H;y$p{?6BGZM~mpClZ8lGrwDx9ZphJ2W5 zw~cdUK#?GL3%wUy1C>g2cDSaCU|+PzI&@6HcBIrJOxS$rVWGgfYSzzk;G@{kZ&s-wRif=F>{c}mG6)3X*0Y(mtdZ|}Yzu~3jrZjPMkVqup-z-o@ ziH(P~;)<*>962IOJbKu;6zz-5{O84Sy=i5w3xo%drM*QzOR8L9VO~`7D5U7y3whP= z{loI}<(|{&tvZr_5L12);|b<`r(zS|JxmkNWazU<_(>S8G)&i$vkKmyl4D!&bSv$! zDDxX*vE_e%Z+j&5&O?mVGn+U2E_ zFR@jhj<)8IuXc-hE`c3Q1x-Sq+}HHMf;Iu)%AwPeApSQ2Zx)t_5HklJe8tx94?cMh ziXX)5XmS52B0DI#Oq*y^ zvCtue#~(_+z9b)r9So>ubkiyRVDoU*({a?WWK4EE8rOFlIJp(mn<`?#BK6biQ&Z?Y zGN4y};91RA599B3dIiUf0OEC2ya2=PJG(%e!o>jej*((8lJ2Qx5(sMhh4-R|L(j)) zIP;*lO|fJ0h3GF4 z5UEk;Lllv!CR>PyM%15DA@X19jiWWz&)+P(=lmzAuQ2>%AX1JbJ8-3mLdz8$&j9aC zi}Ewj4s!!+JMZWrbCee{Y<2t6mxM)YVQ(9^q-o51&4=`h?VkX*hDT zcKEZB$OW)C|I*u-pUBCgewG}$D<7DRvO?gAaCp4=`0Xpt?&s2N0b^No@h%TTl5mDS z7~pvWTF?3RT@edE>B#>HT396`WH1czfYb@njhLzSbF-JXfRd>J#dH} z1`T^wQTGdYTVG5rcfbgSSHO7KDTw{HAdXdp5-0UZ*s}LC*L>U`8c9qG} z7dkr|Ab<;9otLv^D8{-0b?lvy2AF-M*8&=W8JYqk#=LH`i(Ppivgc@Puv2ViUUBxO zZl|pH<6C?OYzrL&A9?`nH&e9xGdHFOClr!m=8@%HuYI1q#16{7UOcxGexJ1RDur9H z*I9S^t^B)kuOAr)^xzqr@9$iAa|flq%wrN4Y=3Gvt}5*!-nrE7BLDOI{d%gj#qg?@ z`qkiW)>JZMPG7~E44_I=ow?^p~G8dwo)cc|Xo?YqH2m=2?%t^NqH*{M6!z&R1{hO*TA^Tht zCAnYg+#l}8@!8*XDa$uY0L^Z(4>yy?T}X1 zVC}1wJ#OVRk~JTrD*J(&`~D?Q2dyfvq#|9jMqkIt{3y+_(ph-y?^55Fdq!0ySIn!2Anz$nrJ+;{LDxU|df+H@yz$ zqub+*-E1l}JGfxa=l&Z)OIPFTGN;jE5xsm|S@xV7c-BLX zqW5$sd_P#Yp2P5b!4-MKVyMiET)L-y{)cH}p)}o*cS$>S+gBX?4??K5C#*m5Sq}0P zET859{|Kt#SR75rb3#I-{_A`Ds{4>CPmnKL`^j)$6Vkr>LFUgCc>a_c>c0Vis55H& z_oI%zP95}_2{-$&#$x3Rz`2N5#;FqDUyVv{7wxj!D$3WJ{ulfZl>c9@{EroaWn(aS z(R0tV8OlN5k&a?KeGhH_U>^F)>AvwJYd!42-Zm=P(!=b1QfP*0RIxpZRU8(<%uP=| zCDhaVedrIKgVSFddU}i~F3~|o&NksEbl{@b)_%+f83{otA)M?dmlT8hJx04i+`P=2U4zqFVLM= zKY@^cP@Vm5)6alsN>?`HwS-&#B>amG|9>EiqVGRM$T|A}#$#j3^gqCKwB$7%%=`q8U$BL)8fLB8r&Y9;>55IWFjxT^PW9mKx?Ti{LP`f<=p=l6+j5gh&^ zrw$9CJ4FBZruyao7mE7N68;6IQEa#Wo$f!Z`Tt-pdIE_zQ72VN37R>)!W5!CeceC+ zax9xD?a+N9%GvPnl{*viB!nyW~)BD@%vXr+U#& zIy56!6~uyZ#(>$=8YC!k>X$fwE!araHZiLddtaEpbaSKYDWigcE_ZhNV2TFf z+FSM-!T=fcf;ICf4LoAEcO_JtY*#0ceQioqJ;L|yk|htqa6M5iHs0}cc(LG0=F%> zFJMc({h{HRf4#5(y*1_nu|J@V*STe5rzBJ)c(JA8^@5N5_6x*cgi5hEq^J!uYfJ zpQ_tX|MjEcSo6V?ra)g)Gf&(?YP{Ci+8=YdOw|O#@xv-@!I3I@t>W%H@mHJFo>cHb zYv)d}(8z2*HM`gT^8D`OqsyW6-iLi_=5q-AuxkObV+(p*FGVj}UEX`+3iNDSa4X_p zk`}he=959nEJtYe-8?SwmFjIQr588PU+e=CxKX5}x4kE}?xdvJD0~yYtD^JSeX(Ke zl$h)7gX*cq=LXyI&ZRwDUsmaSbJG5&3ki0p#vKVf~x6?`0G)G`hf{~~n&LupA zkEFmQM!74m2p$o9#nqDhv_^JESL2fhe-!4o8HXH z4&eLlG0qoH`@1S@H&87bRI+3T4_7&Fz+J*lSSLSUVzMVh4Y-| zbDnIbch$W;)ZdP*4VbiZ^Q<->l4JT=7VGUk@@(q&Nq&6U06r9MeLy(Pi4OH!*N;kbnC49CfLIyTyv}0OC53I@UHZFrzLM2rzq zToVxH9m~$;`6)c0*4VNm|E@02eA;b(kqq~9Y#M{&(0ajUo|&Inci1mi{>cA=Jx~iK zW?uVN2Yn^<>PKwS{<)wPNT1XT(qnB7%5EF%_lMgM9bW}S!t9q^N+waC{nNxJikPV) z53b3(ou}MbY6KY7E1!tEzb)6!tdE)YTsQgD$jCqQK3&&Ub|G<&9O{H7`(33cwa+a!IfQ{L<`j zxC+HfHc@uxoUz#@pEF45njcJ5JC;OVg_vPYXw%%Foo~zd+1A-?chqF`l#2jva?tv_;Dn@U;g&ea! zJ?`Xm=;oy{iBavJkDp?sKg4s0ygfD^uVq!voxOfGRgHF|J)X9pRoPj?JNS+BhGNk@ zW|$Bf?`KKrdzbfhLx)9MA~}{RKYJscuo{Hx5S?v)ew5(OtNv>C{(7#~51!7(oyo{Q zfv7P)V!pspMRXZJRL}r!?`!bX@oln?wp*ksURu7Bb!%IlS(SJ@Vf|u`pIlv@Ie|55 zT}RuN_(dida~r}_#wu{nGY6usM`tB-`zd)m-v&#kO@SWA4+pdSlkkqjF=o|{`uWoS z;4d~{PhGd|m!Gk=Beq^Pazo#t?~IMtcMxmJox{JjpY=ITVIuTZ{BhqO;L(?I1YDG?L`U)6%aY0_{gDUrv$qrC>1};c8vBttHCLlL-_?dvDho_+A-!+|wVGYxM76N?)t8 zcKRwVJk*Wzh4Qf8Z#_0DDKF{PBR$}SwVu$Fdr_Zb>Qxj2-)Ae!sHQJE5L?B8he-&3 zrvBasroQI}taAnvJgz|KdRF8Cxt9A_UHU?EF`Ap*SO@R6zY3w*iejCl>^X$Ppmc5H z5F7sMV_Zk-Vf|k4MlaT@)ln{VH%OZ&CD<5W9TM=~2CVgY4f$PUTT~Ehz z9pcua-Pk}Ut3j%&iw|MNl9%3Wq&gWub>An%y$bp!F)p+u-T(f93aiurXU@~>K~wMP zTai-#t|yd;n~PP@%XY8w0}=M7!-9ojaE89eBO1&-au4`bf#aDYLAa$*S2lW@Gts$m z`-!j=-5C21TrSC|^QOlt50xxAb$sQ^9iTh{*MsN{ao^mLwJXSaJxtwibY{r#6}%vu z#!6+?KbFU9Ys?uDpy6e*7ITN**ZKoH5S` zftdH==$hTwdVS?>GUwXk0^d5l_$yx@#h)xD^Ig85 zM^N3m(+?MeEUGT<`9`mfQPU`b_A-O-zuO#s?IvRi@XW$#`R+j^@DtS=m-&h<&z=2% zr%edK4Yjmiq-2GVh1qVqJe5t618tj^F=TUyoMqcCf5LwLStPx9<6;!vm;mGBUp_6@ z>HX3=7-Eb|FoH~tdp7;KT`Z>s6A;dk1JL(-er5SBn><7M2*cZGGYFY9;e zW~pJVn(~!0=CqsH&x7K&LaIY^32a*nJ+S*<**tcuIqXSGQEK})7UcG~E!bYMe%YuD zSxRz1`MsU3n}MzQ#Hs-ppI|ODX@)4jG>tMrpLYm4YJ!y7tEQiP?>5#b#(qY@Y^+V4 znqF8cHHG<8TIrrFsX>~k^j<>|=^d2NdkcgX0-^hbcdfO*wZ=YYoU_L`fB4Chd1q$M`?|04 zcr339|FQuV5k!{Lu$$AXW}ZpLQ%YrKWR_nMlZQosm0i9nwe{@9%cwce7fnAZ!1k;l zuXM3IpJ~Tj)&TN)i=gG@*kz2${ev-1e8+Z@h_p!M8YwT!Hrq52$9U&brCC&y#niq_ zX4FSGf9J==Ku(NMzE`jpXK*jwso%$?35o@)asX;RLM*+)#da;5BYIXQq{VrD-)&Pn zIg4~`X4F4t=8s+Zg;;%W8Q(ZNDy+4CHnP;}2+CRlWxd-qOB52Qa)vrKq%k8uW>V_! zoplmPTI>isoNWmb>IX;{DMbbvUUc#(%rqVhLyP>f_7#)Es{Hz_ZQ;QHLyXYvF}D1b zEo%o?}cuK{$~B`wIdcpW*~QeH+66>U_x?A#I*RW=i@&Ax-7Wi zYs}hP94|8&iUoGkXu!(XG6bgN+|2hMgp@u?mx#>vC!i;ho$VdKmhkLh3C2Y|k;$J( zy34bRda1iZH?xnJ7*IQugmHoUpL?izEgupoS~~Gn?DUJj$P9Jry#0on*KM!ZJja}* z+hgpi(t-?(&0MBJ^@uMkqT_lK?YEEV&rUbVnKZZVvE1K!H~6XJc0q1WS`cUtuQ>AY zyA$giDHqxVCEGtD`>bxH)^{uy3m&Zg@UZ-@%j^AA1r?^97Pr1E0tT}@V0-CAzqqU5Og#1^!zJ@Vvm?m=ba@)eMPPo}g)!GOKEmnd4 za`{`W73}OfvZ1R|^LAHe7X$?wa;(m`_A&SOJR{ja} z4VI2v99HOUUNqx9Xbz0vi3lh`e9RS&^ixcns~4FInpd^j$+i#IIk9;DE&AmmURFR) z07N%UGVo2qbyZa7BSx%L@4x}%ZAccHYPQ+_yu&8i`(fQlkm7Q2| zer3MTM_sNtSq@@1F`Sl;>vVT{RceG==OW~r^DNHX;%VANi5)HU)aF;}R27VtAGJfe}d1^ zVqufL;&kmn@N(mcya9RZ@)c0@G+9W{qlFmupnqaz4iQ30hd3|AZ5w*2XfH#&kcs*M(@H#3 z;hHVNDHrBt^|=6Hj=9*jQhyE$%cFpBO|VX@?ri>zZMXvefo(4I^f+f?HyK*lbd{Fv zt)`Exe@x1ivnn1ADd0HhS5fcG1I`tek!P{i0Tl%bdzW(W^5gy3(!Z!Y%YF)?{!C`0`A zTFogmT0B?Xe`N{&wWG+^*m-|>w^}OpP?#fF+qZzaH1yc}kXX#avB(Qg?{yW=&|;j)Agg74e;y;@(p-Atk*?g4pRLUBJ=iAX8Wa>vM2YGoeuXl@4IiO z@fXfg?TskDT-LY9)FT85mRBa+%8uoS!y*A?6W(mp^~5Ra-tOWb<{7=*S+<@Bn;$0u zcjftJ!My(VErXBq#Ud#R>pT>2SB3!xZaTL0+~MVs>PGZLb61=yg&L#@#3bGpzw0!M zhFrg-9Dh(N|DYxFk)%hYhrs3+MyrLx$+r$ub5gz*_=q{p5l+^sK~ZVK*BnBZKAyvQ zi$(x8e_y!dT~cfERle+SxkoL}9Vma(5o8a<+_V0HP-nk19<-QilVhc zyuUi*c19X{kwt)b{PpIti8ECPcLhSbXS(*i-3MfQsJ^#l!=hQSISH0tj(_ADhdgSI zmaYnQmsk(v<9pMlw^3o8<$S`43-`FTCk$_UyocRP`u;mi(pXHCx~-((7WBGCAY4t0 zG|gsol0?hi0+;PlxE65vZeKAV1 z!sle<-t^qykT{5DvL7ZZCk*!sx_qAA!NyAweBc!)cK0n#w6uon^xg# z>F?Mv)c_lJZOSv)Vps0UosKDAd*c0Y-mXW&+9*0#4N{}@U6q3E=8PPcK`j$1 zpwk7p7w*Wz_d(0gqC3VPMtB#E$30G%*xAzC6W>bR@y#>Pu$+d=V7q5K&x&9#GJi>r zyq4V^FJ4I^txct3L&l7en6^WxC1yD}WoWXW)g$lYrrQAI*mbWEll0BO12gczWP5bq zn>JBA+F*aVy(P|@Ben3Lmzg`fS}y@NQ2Uz1u&c`>2y-0x<^V*-oTz(p%hDt7i$2#( zJkh9L|zOS7nA%i(CrO>jpVB2fHk_^;#2+=gE5q?iQ)~6};4mU6H_PGls zP{m!;1o^vcfg3OQSz}VD5LTXgtTVBOiG9{XPkRuJ?xZWE7zLsZwm`O?AZ_=Z`m@WS z$6H57r>Ue(teL7Ka;LxUjGg0Fk3+cLIDH6xvg@5U-btw2Tl5Wz zfq<1R0ripA2OfJ=?FKy_&Fs?rWnqCjvDUp&@>h)>RBwl_JdV};enUtg?r8I%g=taP z$qe*zd0Ph9vRSr8P4|!K_07=w&F=9e#ZByy^meoJ`<-7`IFx9coMjRcH2VW5N>r`HU(MGdiQ2A0hIxPK!dD4XcqBC%)&QIJ9m3GkQ zMMeI1``e2Ab?}|Qf(F5>!<@5QDeJPi)p?kD(j@L)^N1V_-daWotaY>mDEgBuD@L`* z40mnjZUQaI(eMjk%f)cT9xk)s5m$^AX#h_yaN~2`C@Dp}eKZ6}5nuF)KVdJl*P6#Y z2yKU~^qP^+!bQmZrdM+hfOpF}c(>)YdmH6{Cb+t)7~TGWd^$cQnFih4Uj-fA$<~1Z z`^jz7=FaqOaz1p($=#{z)Xdh17DKNI2-A&iuSc8bP-p+-+Fy7uIQ1qQ=d;+kXbX&T zcJZ01(%?{aNe>$#SA53Bo;OR1S(?QjxLC6lssNN&%VtR_rq`JaH8;Y)_6!c$cL4)b zDCjnt1jvt<6l|%UdFj$}e1A)$AqA#ll*Y}0ZSCq_5p4!FnZziPk~(YZ8fJhKB_lqYs6QOr^0UyGw`#Kfzp93K1 z=_GS5br$|OxZ!N;oA}T{U&~}(L6^qrSIrXamxq%Cqx*V6KW{H^N@>XCmi%y5MZpb1 zR};%UpfTuG78C?^8Kjh&T7Shru6FR!1+snTw1O&BVkuva;x}X7yoe0nIDK#IzPZ-i zq)sZS8aj?`V^>2~e|Yv$+Ta~+R~ac)}qvTpnFkM3ctwQ=Q0N!B@xkx@AX7 zARF`n3C!6$diYH5vC(-l%}>KCWA7lC+gRY5l&3}NDC$Tn*@AxPZD7T+ouPFLioMP+ z;hv;?{K?NFMHI@b@`J#GUjkCIy6 zy#jR(U0^rFyGspF!>sfg9G1TY$>T$+N9vcryc{2?+jQq1-UpWw78onm3A#{f9@%8d z5V}~Bf6Gs5Jp1A@8muYw3~zmD+Ve!$YAod{>Xb~B?I2z9_c_?o;!qQ4-M zRZ9AxPaW5cIYC}?96X;aYJMW|R-wOE_;|D1MQzXC3}%K}5r^aiS6c+J>B+Wz`Y{jL zJWV{lh3$nopjGGE@pEHPLsDw>+xyy*cXW8H)>fI*_=7&9tL;Hy4RB7GE zCtb*{Ai|aVMGxvYJR`HJasnF{T3r+4G6t(S=zD)d_CnEZw&LX4ml;ay0fFO?xLDF_#Is)_m+tek1a!A4--F_M!77GJir10h;%4I2MM9V%(PbOCM> zBsj)~4RszcPjHtp@1;YOXMsgyj(xEIUAMfKul+h}t6m3BW>=nTfZ}QVZf*%?$_U*s zne(*batg(txyvnY3Pe^@-;SG92dK4DkUjGveO__?RuOPglvF3(6XG{$@U)v$M1*3J z-@sy_BMA}nT3Bg+G~azQb{Z6q55jf^6}NsDY)Te04|Pt{P78Ie+T%)W@fMkWBr`z3 zthNz)HOiCeS{-B-rLi9@8~d`dKa!oGx9%ldyWDyVU$bjj-yTUQSy=f8DRe~e9y4|% zsQJ-D$?wnx$v>HKdEQ|GeThe#3Q}6)fexGX-sKZ;m|)%(mKAwKfP6VdY9UO+w*&5B z0Y?ppu)k$HN;qnTGIJ$_wU4(btXe@~0+T6+c{?d)(XVpZ`;#H-K?)bD==(G2b!<(u z3IC2@$W8F%1JaE;!Cjgv9d@N=HED&V)@l;ZAD>7xwUtXxuqLX&NySBOMOng<%~NxB z7kl?>F~j}xDA|_14w~rUYL^qXnDN-9a~Y)(!QW#@pF(W) zwAg3dYQZB~ke3o~kE3z@c|=ERr<&|fRRB+l6eeXXPGCmy8%_-r_?~?1Sq(%6|Gss2 z&0M*Cu;#)OIUbEgQupQkeM%B`uy$JQRl@T7W?YPd*MBcu zEPjg&GBg&J8dJ(qry4P96X`M;X8U=HnuGjRt{YuYl;1GTi1pWU)&@)9L@ro?I!@xC6}humh_N@uq1auPSj%7 zRBBjC%@UOJ*MorXrN;Jp$E5IEys*1(q*p$&M&)lf8<=93d)Xy#yXC-*$yj?45a;O5FbJ6Vt0U=05=%lKe?w+p;wnJV zS2ykgC_l#=R6I{oH^%)MaP#$&;Z`|IQu02gqyU}Day7JMOE(|JcJA~S16tGc#OiDL z?B~tUp+#FPpy=zoaJlv9OWUTX-RpYO^&&nvX%HheC9QwKt>($4p5psZBc}h#4tIq5s^EC=COVV4OMU5;8hOK8v|E(+ zvxXYLk9+w_je2wH9kb3O8S*03(naQg)3Y*k1-_z-TDToLw$u4xMBDD>GVa!E_vnQv zI3OoP0>&PEK#~z;FC7!ghEDp*MY;^JU|*1K-463eh%*T);F@(T%mWSrY&;XLxf8vC zqqz-x^4i!WUTormQmWf`>yk~6cyQ@Q-jnw&1i$C$if4CUp z1k>(5(YuGCNf&(({&ZC(tx8?5VKpmWb%Z7{Ss>gUbLF3MFmbdIr8c1Qx+Z*-k>OS9 zh#=+i**cd1k}}uN){<#vYXwp#^MQlBIiDG32hw&qYi)9Iw7?co7gW0J^4X zI=KK#BlkwwfXKP5JaMF?c_>Z%f52EA$LhaTYD8lmemI%A87!R}5tcZ!Rlyr`A%g*N+RrSR%fRq8&n$OenQi$G+z!3$o@4P)(PO{+>z$KI>r+u zjfI&}H{%^eaF~#h7L2*1rA9Q8tOb`@l8SmxeX2fw>4MAUVA1w_R_-fxL%uN3g7#b2 zRHB!AY@Xq+fsg;d0M+iWX+`9x5cdjZ%=xO8G01Xs1}84?U?0rw69S@rmDx8Ou zyM`WX{ya=mky`#Y?gjqkM%p0z&t83tjtX~#oc^4S3a<~eaZTmMkuTBej;0!x@C9%1 zu()*x&xn2HHnoKwWKKC70zN&Ov>ssJ_;vqUVymym-8>VO@=nQv^l#-1>DX=5S$F9V ztNq1$0wxE~PbaeVY`)##42KU1>G=Sr=0W`_h}Zg9SmFXSsa|&hvsT@Rh6u`Sqd z>{;-Fl%D$qd=;7Qv*xtC(q6ZW&dp2lR$FM{4BDH;@Sm!~E-zXFfcIw=hm>_4KOAu^ z-BF>4dxg;X-?1-xQqycRwrlJplK8zFBf6E~X2bbN^ADed!ix-1Z*%#|D_L)-;ok{S zHLy8Su$ary9)Q=@CodFa7*lwbp73->)^B(09o8f`s0hiCO$8qu} zWq=|bxZ@0 zUc7GWqPc>SKvS?;oxSKc*Ei3As53EV%Y@^d7iG8Ws1$=y6x%GXm`S|peC{}1GUl;s z+6q&~i?OXAEALQSyh_$!;oL#K^?fS~IJ$zSxyE^Op&hg|I2OR+%m7Jx5`3!WQ2&Wt zCbTkF(!Mg30(6VhdCdn$eK9AkR+4TYtGSw0C>Z_*6>PS2G0vL`lA2olYbDis25R#O zJmw-rb(R@mcW(EwENu6XPEfvmEQ}i+tjwWCHt;AX&!xB%WJj zvYm^iOE|kZyW5PPR6^ch>mG}a8uhs3uZ5*9P2&4X~J<5};>Y{V>MonFjU zq&LS(D$Ml=@iJ0J*bYnJep!fZ>7`nkxs?3VJWwXA5V`XR9aKIqJe$f5m-dW{$xqB} zw9Tb)KS@Wxma+q0054@diuFfJAMJK)WvpAzj!%Y5=+#x~HRY^#Rc*B(MT3+;uC0!& z&S|&+j>64#tg{TX=#<`qD6z59XZavl*zl~Efaepe_5=tm%ptkBCTQ3Gku5 zskQU1P6R(iznARDEnS~U)(EG{F`rjGA{Xu3Ouqxa{0yuRZn)1v7E)MmS^-A+`8Rip z^e|r>TvWX5tsZpkYc3PRRnqJCwuHsvSrc{W;_5EvZ1=H8nR;2`m8N}jn_`eK!uo7_ z{}CEigjwko`zM{!^q+JJ1s$1@;h>|FwgR7YiDv>gmM9R2((7>bNWim{cEKT}AUNoO zLqCL~(4F!XrIX{^u#MLGCfhm2QEe+0p;D57pe2lJZs~Vnj(^cQ#?Q227w{HI z#hI||;OGdmK&%~q{}ezj3c=~-f4E=x03u5LU^J4`(5F-0nSU|Ir|hTcjohC2qDO(S zJaKQ>Sh*g4EB1Uoe0NkcY#k&r-_tk*dzxHEldTI!&x~tZRJ6JLkxyHci@2=V^`M?P zSB}SZDr67K zI?1ZIFk-V)XSI%-&XOmCOy9lu4~-|w`K35A^ajrrQJ*qibAM)l+<)oQee4+IhD3hrmE zWL;-$n=4&FFR%EjOf!(9x3*a2090))#4qFk9oY7;maE)@^X*@qQ;3Asrk3naer*Me z8VoY$CQ1J{k}n4e$euBy7ePc;T{n{>(LDdPI{$uri1;uos`ce}n&)AQk+Z8UH4GJ1 z7O|MTLaEZISB1xRgD3MC6#`S%Wlk^zV8SW)3+bnAM#F&5Y~M4y zp>RFXGabGXxq~mZ$oJljOFid*N2?6Kn-x;Lf*oKkyF?X#Q52Rw2jGr9!4Dr1j)`UJ zvUk=(vqR>sRQ*|r(u*tzkS};FINaw;tgBz_s0jaDE^Eb_@JuyQ6!U+a7Cio<+!wa< zooXz*#YB|=8?)-&s(ERx|xUANJU2kc~0XQSkX#cHGy^T_(4ig}oY`9wBqCD>UyR!6y<_ zKvQH&)EP7oE7=p5YDo$cb>n#v&QLGdjWU);Yyl$Kh)Z*@_qyWr#c}SA1rAj zw>Za-;-)^dfITxFqXmEVhE?y6Ahb#Kx}2`T@x2^d`(=F z5!wkg92{}!QFyv3KhT&EY3%DA|mAuWg_9VeZ7>WUKNKgbP>*BMlNtX+~IBgWsX z*}>aMMv%VT>?E&UZB!qBv-4{Ge5m4cVgJTCC^*R4xZ??bN@Oqj7)P9aoRYY1hfQL; zq<37D&-lOzp3TR8Wf)B?43xRv;RDhJ(Dl_*=Xd@uX_ZKb@1Q1+Ige~|6`JL%(d)*< zlwS4iC9`~#Bvc-NB40yn<4<9vmtvfKQ+)9AsVcBTXAV9T=g zrI2F5W^w8om_=&cT|j+5p4_URMPWI?OOi@KLtY&nUA4(tPlltLa}Ln41D$G?@CS1~ z)~mo^F7>yq9By}lAPbij4#uRhsnq8`e)OXo3%TUmx}bBOLoQkjF!-Nn3F$4B!L|0zr}_et@N z*Gx9&oMF#`EQHPojK>m0K`ozH7nIZOB%r`0@md+pwHdXT=_n(ktp zoyYMPJXzlV>hL?`{4K7G+?QmIq5)aZ)m>b|jNW%0hD;;UY+vNd%Hl?o+$S{S^f)Vm zskhv?4o}$4^HA@6!*a(ly%JlsQfUTexQE^Z7#T1(L2+_547oiF{M6sM4?fn1Z7${~ zJNR3Cv!t`3ah4>Di$2RUzBzMc8F63wo4ZM6G%7W6(#I|3wj#QUNfvCz>LnVBa|k!) zy%uEhLC2~RTQ(HtVp(f(x+VjSxKXTpS^yjR&vLnypbY2C8!YM#x-qkic+6VEuYD|Z zL9IfWn(tk-9UO%Pj|ivIFnO1UPmbRISl+(^nW2f&S5M~eK|Y_!O9+>4Y5!tDOdrrY z{X5CxPJ3TBgYEqMRb-*CFco$_C{r<#$1}OiLE-MAil$UN;rJtNKp$+&u7Ht5V}NRY zep6>Q9Giui!RfhRqyzi2VwXF}Vz$5l$DK8;6Y`t;Q%QF9&yU}X3QRbw$6xvhigl)l z=Uylef=dw#FXHp7kazc7+PwKHIK*|04868+sRObnX5I`B3nHlFIn8mfMXez7pOUxG z@hVk6jz%}DhO4G197#Pwnu&tnb#5B^m6q`Lef>_ibw?N~ZRT~jo%31fN3d}e$a1$* z_?C&VLaUp!!=1C;C1vI)8ucf-y2y7ydy0aJ1TL`wM*e#^Fqh`(;#PGk_=3{`nQ&hcWK! zM1aWFkCk3lss&z{>CGm?&8#RrcoWr$<(Yqo_}Gt ze?4l;$PZ!RHsrpYcr6r{(_W_YHZ|viUP*)hs}LVKWD(mdjSfspW*vAwJLGdaFkZP;FP1P+`$h zDQnNRCIs~btR78TXg_gj%&4jHacmM`v_ToKHdC$#CNb$ zk4HQS{a1zed-fDXRwh*Q&SKOH08`kQSCv%LC)a9nZQ)7Wm~RdFvRsa&Uw@kd{e$Ch z>q-ysO&d^Gc2_oq+c-4O&+SQD)5YA6Po4iRMjq?)n=J?K9^e(%5ums=)x zfkBDbng-`mh_htQGQR0Mb>e&?G7U}?jVQ(X z{v=y9EjNE8{H2zSOXI~89oTDbMq)u7x@f{!9yh`SRY}JoE&gg$lvnmuiL&j}1wu61 zy~Ty!vuU>WBYTcT)b4)ba!>`;N%Lh8_<+b2a(w5M6o8|Z2oxxG81oDp{+#sW)An-e zW-Qy1qHSoW#Tqe=$e^V}UVpSVf#Vi?zuU^UGSO|M;*#`3{MNkCqohlh9QBHCPg(>! zS~}LO5zE0vh?hwC8^@kovnZ38J+6z_KrkYHf+nC<`ufs~NUn_t*YVX=ZQ?>;fvY*m z=H*J=3xa>-1ml-Rb|!8U_naTiNRE@7m${d=%k{LDTrBp<2mpf32N_+ae3-#)N@})x zGA(VG_u-i9b8P&D6E@?P?S5E?+>#uf@|f4repVY50C^$=#$>4#PehyFvR!vki1Fqv zK>v=`-dOe_PD&iX;gxgmX7!~h@0_a3*Yz%DycelRP9)J71<&4A7`Ej|aCzEPigaY5 zQCE6zKA1LY`&=KeAA#+Nb37`c)#nqSWP_Ag*YIezVrd+&r2$??ICJw7iJst@Z29NFj)EH4-;NBE*XS0RQ zX3~imT%$5XrZV0K*v!pd1kE=c&^8EN2(CqRwq+d*Ul8IJhUKh}z>m&mCHI<<6Bxfkwwn=7gA!sOsGvH#p~J0yM{xYY zdDY_JQhEVhaizKWdUixke`;jWDM-Ua2)qsFf7P9gtNmjj&UZMb*;rInq_}l|vDfm+ zdBP-=Lw-S2AG3fS_Mhg0DUSF%ubUV`pN<&U5FDf4LS$=bV!Ss&19uV;%xk7EzChSr zI1UDRMuz(aMp6roSR01L*zdwQGi-md2gYG}1Fnh}NiAg#OJ*P}kpzVOEgOX4Uk%g< zM&xTbhdYdjy-pmZ%NfIN!JvTfTBYxB z%;P~BJmxO_gVIQ9Q!4%*)=OZD{YibmL}1C1zy+mR59>L8{gz~sV4RV+vVwxXo@Bfj z`_f}O9aq*d%45EXKwA#XUq8V~Z}CR<^Qzu#R$cV?K+QY%SFp_279Ot6QrFij{upeA z*BR{gaanr*v$goyn<>tMV%}K!IoF27T7YdYenD?0qh)xegL$;I4G#))|Eh zP^SZ-Gwkn&XW-4>UJSdp_Mr;RpJ~`L`YRrden1X)e7I*Tn_r?mG%*G~#Z+DLL3d@( zC_iM{Y6?f&F@FRG<`b#JQ5!qd>9;M%4B+~b3;nuR^kV-d1)L!wdzeDvq>~4#{lUsN zmFAH8_T5{t(k)6lOJ*WVX3R(NUO9V6OVJjKs8GPN#S{4AS7G;9S3+xgc6}dx`T@=S zD&sE%qZ%7*NAN0^G0J%Tf{RffwGUTiVlBImBcc{<51`r{9+cPEv&G1ifx5GPJpFH# z@>?=X*%8+;+)rNNY-86AOe_7Vh%XqTI3;>1)M;r7Y{l>PF&^>M;8lE_R?oG~kUSQ3_^_vL1FSt*c;I1Xr1LOV3tBTu+OHexnu_d@{Q@l0cVt+`epUK1%t}p!Ij`kIXB+iYfJuCj%eKK~#}7 zMel^eCtg*x;0JQTo%l}Sk434serxSp07~t5hSH|XBX&EQ_bGOC_m$=>qkV~|HAo5) zzI;%(t=1-ay(1agUxh4I_f}=bUGXw00f_{~pRG%z^8ZK+mChM1;}x%cw%_$L>Fq2_ z-pTU>o!wF(ygY0rvEXs1G_%hTb}zqtbf=sI(F?D#9&J=tuxF(gmP;6Q4imuka_Cjq z&j=hZd=v|~S2qYoeZ#sIqaH-rhY9#=Kw{d8P;UFt2+??DMT=m1c>O|O;sOQ|;bP_n zu~4ud)BP|_6gHNt|3xk;PvF5gvzqN+-}6~*`OqmA)C7+cT8aP9$QGiXp3l7zue#I%X_lJzi027r899>)e)#DZytP^N&u zP*ZP$En*v?5w11I7m~5ww{~g*pe?}fMXdb}Pq0=WOcM$4;eHLkEVH34rLx#Xn>GMS zQNIJ!{O9ULbU%c_!>vJR-#PzHmkdRMTelV7+^qlpj`U%J?jJMOE*RtKj?U5QB?*Td zZ})V!0(RsZP@WZ*&)x~wUCg(0STlc``-42FxAdj+?)0piHuKG|vqua~~Z_Py%vZ)RKDhqmtD z^LGqVIb;|6DVm2NP3=5z&TTH7A=jL&^jWKuoQFv}-|J8^;)t}D5+ZLOeAs@xJmdkU ze^spi{PUYzueDe9?Ib%3^_BzUGnaZitcE=|i>GM6j#SAMoT?U69d?FI*RS z6QcReFx9UH(*omoSv?$jdZBjS1pekJ&-Jh#Lg@7-(ifZ!z*LL!N>?!T_%nsGrBN}%ss{(P!iX6n_N{$H5+ zldmXa_64cEM zEmTdujnqGw6-=`()AXaVHD2){z5vhP`jV-mk(AI`z9j|iM{AW&cn2A$uO(YhALIO6 zirnJ&BSaj{NDU{qZu@0bdu++9h`x`YPWT_AWpOi(I;8JumV#xISQ<~*-ciu7ZqqMu zJ$2c{qAjWd{_w8=dbWpBwjV_*V{-YR1(_xs(@fd#Y}`(_BCDQ2a+^gpJbx9I;>$b|Nk9aT|@lNdd-;cQ-v0#E;wIP z1a)!Pm6{$=7>sICOXZh6Uq2A}Wl}>@-JW}zRko>8AlYKeb*B42O#oTux7}(Z-f_u+!}W zK|)^v5n;d)h3Fr$Qx{;%?!S|ceK(|I-luFm&_(%b^a+mtTq>Ta*jRgz>vx8(aCTfL z()@3xEonVQZXC#DdKUQ|mF)VLi;cCn(0c_@{Q|~twm^FKUeRSiT{*A4X`4Y@QZc&f z>Era%3B5bp>>-kPQk`KFR}}k>MRKJwn3ga-*vW}{L=ANw&CPO3qrFq8^TTZPNJaID zSGJsH%lE!mZi%}8oMsB#4<8`dWT#S{b?Y4Z(hY;u;aE#y4`ylV+^@V`|7p?sKL1}9 zt-lRfxIYy4Tz0lPA4g%w-#&J0mL~y`sk(d2;fCTb_hlhxUd|SJVrG7lZ2>KDx9D2vl=ye>}=LKe76F`K81cIF798d?XTejdL73pBFcG3Qpi^ z@{J7~)8AOPJBA>o`*5t>j>YwsOhrAwX9PsVOlV0nKTe!q<`t@g_osVEXN!P@%8YpG zs6$}}zE4BEKACUXZJt}Ns}$esDmrYml8*hgh9u$G4)y4G!SIDA`V%u-HdWKe9??gN zV7Hc(#Qvzle5VQMMj}szl5gxwS$7neDHJpjThT_nt9zpk1ll$|#c7;H!RQUu{MXsc z0dq`oSIR-sX99a%*|Hs)2$FCIUfJQXDE!K^i(5Pa6E2g9hw>s{;T}VWHP7AUiG8X| z34s5g?`n8@LnG*HA{iciem>B&yOWJVStIL|^c`?=I^#=`z+pFcs$fB66Ek_LYf{w9 z5<$J$#Z+hB`MR@9`GCMoAe>OKU6qsaR2raq9^pWOx@tY1*_N*ct#hN3`e{5&?KAss zAIc{cwp?kF^jkL*3;W$KzMoS!G#Lo16F&7;!NIW!imXH+Wh)oq1%Bp_#bP?h-6=Y5 z)J_ot9t-!M)8@0Dr=gzuj@22>4Tw)QsU_mGt^`CI zN{-9)^dnltXr>T0v%@2omv!arIsIZ68A2eAfv^@G``5s0>59PHzPba8b%mP4UHYOA z6BHviQX?Rv-1@(UChKcxdnQI&TWu4)-9l)kx>ggh7q1nGX9EEo8ylH*9g(;3E>j`#xI1U`gXb%4e zZX{vL+7*1_)Oj%iO=y91W?^&0XnIoqIM92J7sB{KpzVn|L}ZP=>cBBYr$OAvrGQ6;DF=z=J>WcD52-==?d%I@bx_8F$#vYqAnMV~biK~?_>1Va^StJjGnR;!AqQeIEw>k@_h#!-lwRL!qUl#` zwMJyWN_}j($dFC!>7@Q0NhaKRzuB%mV-Bo+awH-n*4R&=%CgB=!GYd~?kGY2OccmFs7b4nuj(i_1Ibb?8wvl!?bX3#kArV%cRGP6YrcPW!%*3HPzLM zLn&U%7{0ic;>m|eDD^k0C-6U{jjwTbE!cbiHsQd3er067WFG&$m*@v?3|k=25T%hB z16A;1R8{TwkaK{?Ez6DH?iOPY^-sq$Y&srx*mlmx_Ikw`R9MZKEW_&JOl3<0K}1j< zklEBB6SbX#syG##8%+k%BtNAK3^euT?yW-JHYrP%Nih;{545d=p`iU)+dxYL<%QBH zmV%G5-t!f!w_Bq^#s+;pE%P&|>31BQOSx!QJ|n@VJLzP55znF^9zc_PlAip5Z>Ro& z-Egh_L|h4s`n^+%XnGVSnsWNG>Mg(i;ZU8h)o*so&wl3q@7&Xl zFVq#*Hg^O1W%{es`5w}8)k?9{D#;`F1tyq>rUW@<7**e~1*-o1zw$o;)pX0m0+!dw zUz(Jah7{S(nXI{|88=1b^@D*-jL1XWSci;+OaX$N-pT##0%sP#s2x=B$7Wm2Bd?;) z$;VvHMb43|SjI{F)yH*lGVK@ln+i~>z(A)PROY!6E>yU zNC{WA2eNZ%WbeLqF#G}w!X#e@m%#)Yu`_M%oXNKex+nC~(yAYsX6ZdUUY zie$mP+9CS?>~D&C$yfSTYrSHD4MK<0e8f$}kty{QM#$^_{4Q$da!h=ZUt4U@JIi>Q zm7gwiP0_qz$B!QRT<#X@OKhw**%C*s5mfrP{RD4rFa6co!QlyU|GtcS?16njAUZ zTc#O$V~?NX%)*w^2~N=nO(0P`8JnE`-TXZI=yh#1s^r@Xek01ZzfSay^34jDi{q-q zL;?Iff%9DzI~9Q$wtOgtzD6brPt5JHu2Z3Ph7#(kz2gD{ht%3=Jh<8v;{LZUKlBFZ z1#MELh^uAr$1jcD=+H}SS+T34cel+g$vW5ge#yWlH7RhU-79HI1miA6>8OPfwT6XG zDqh&6QS^XKn?cf38#aQ*hvmO7HS@a^O9_94HP(#MuX*5xFOftQD3wD zG01X4OReprcTiL|i8Ep$6+bCK3arw(UN_S1o ztuVd2`9=iuLWLvw|CM2h`5Rz%^i6lc?;!?IHfc`BCb==Om(%F(!U*E2QNRX5bMt^M zTeTiZMls#-s-kO)3;tW7H{k)X2Hx-=v7UAZE@qeDyU;w~doP1!{>_GpVwU7+5@Rlllu369Gi78!~V|4>;=0Kjih|RaCoY!cT$Cw}feuilD zjxGCKpI!T+80BnPP~U_TOLo;%?-ZEl-T&q@N-I)LE~DOki+Sb8HUBF}Q(car55}kJDb$~oU#_yfb#!sIdWsLA zwHc2U_L-^7p;Uc_t%d~`h*$c_awKDaPRviTK^8iA^#U&PR7^<6NOuePEoA&w4}#k+ zoa%6q!8W*@d{J4=6I|ZAEsjdWDGba0yw#fq)Q|WTzrZ=S>c%sss^)`tjGdCrgJy!|{~6-& z=qAMB@jpWxG!y(2Z?c%`COHj2QgM%)5zKk?|WsON?> zYTfYUt58ADo!a0%BR|GG+6UjIRK}VY>lDs2BA$_S!zq{5tk&j5ib2)vOp{NDLcHY| z@-w+w>hze!rE=(@2e(Ck-3SV8^-1&Tv_(&WRi(ILiaAf{k9ju2QcVba@HpMVZALtu zlQ)Oyujljb8|k0Ids63Evjf_io1P;ZaH_%0?InjF?owOFy6Ku~GZhjG<_~*I$CZ;v z5K&pn9|%)R02*CD1%BRa>aK#O2b8w@jrHGr~tvrM=hW%HBmq-O0xf;a+|1RH(cR(oQ=n|EGMghL+V; z@=^b-4!PQ7A}wAfR2UDx8!O!5Qqs%65(B1n`x#0_4g@R8jwC(Kl%j1=oa`exQ%enm zIj^!@ih_`YDNYxq*E2hP0W`Rd^C%>qyLC-xAB4|w#D&uoZbc#S!Vd-muTrgk6g;Y` zy>_nNf!t&W<7WJ26h=YV(9!0&;j1&ylZ%CKxF8e0lc^(mXYYuYCCNNC1uzt6N-FF< zZ)~b?1*QkA@TTX?nzajk&;LsK+E*v5XW0JY%Z{(*_|BX8lS=P{o;%w}QX~P_cgiCP zksHtaVwUnN*%UyYWFLyw?5o_Wvbd+|=G(tYpEG5cGHiz;TEF&$9N+If+B3}{ znhb18-rJmzcN`)5FSJ2NMAlioj>`U#$IEErq*8NVx(dAcK+_{NoyMv2WJ;ZDpWJ{A ze^Qk=z?PvXYu%ozTsS_ehvQ8zPDSm( z&Ss6USC2I3=x&voLH@RB`(&j+fXA*sL_$W{&3aV;?}|y_cS0d zDMIkGBvnQc7ie?ApguR&kfr3iC$S1|pcI6mvXmE;`bnp+&Xmq2(kOq0G0uKgYAEDmD`#UO^Uq#aX8gQ?s#W-^(^HJjFbQO2!ALNd%EDxsN1DTy#*rftS` zlyxoFjLj`;QZBiTaVfV!jg9@<-CuT}{biqL&p&X^=RN0qp7Wgd{k)$I$P^bb6BE>d z5IS6MnAFRj`Y)P^B~P!Ya$CLSu*0^cmgyG=;KCZfe{?Bgvq-5!6IXj-qHgK8L8C!S z=q6OaGc_Ug=uC#Sp9){%W|)7NHJb!n&sNG{IPtj|*JMGW{8LP0eta2B>J>9u{d1e) zGxt(ohHJ_FL5m#F2~8yTGcOlm1 zauIzH)y`YKxM%yxUw^WKo}*H-eQk@d+aHnPOTFQC!omE=Oh5vE1`7F(27 z8xuO#IVMp2QTZMUtrb$gQZuGFIs{jbJsXARx6(%yA3bU`ZBr|lB|O|c)t?^mR6v~e zDZFde!6Ed1BY_+@Yy9EP0u?JELN~+4Loah>g8jtKRF`w8x!vob_Ebyxvr#>gd{HZ1 zw6S>4)zz-^$;35sbm(J8EO1t|_#ab2T_)p$iyn7Sk1$@J0YDW0=?CP(u}H|jMaM8QMdNZ@10`8Q=> zHvFU|>*_F*=~k355Hk`px{GeF{G^3WMo)4+U@f$qCtni_FM_-LxrV1}SQ-N4xJkI9 z823XgydNvXL|V8ko$QQ{l&&BM^A)s@@%> zWUn0p{xZQJxoarMR={;08x*&kSDL8$3%p4lgkINf24~sr%auEwuE8ok*yiA+s>K{u z@%BI(m(bZOC(3H1XF!MC2<+)OJo~tYd>k^UI1LWaR{0%^DGL(nEd6oQ@7reuPT>G_luda6z%q?x|8=t{5wF zpwANebLGIg<6UY*SRE=Se%7YyX3~mG#{N~Vz$ zkTy~QCMCF~S9?(DBc2*B?ZNpw$FaBBGdqe0Nvuo^ZN*OQV?>ie*2%I*p!2Y)JrsCS zfphMF=aXT;;0>3J^MJe=usI~eyQYj`gcup+nPTd(KcZwMZbt`nc#IlSCz-bJ9Vshh zwWgY3s9mLRut2B6>=Ht6ST3bfHY6{geBx`42Cwem!-u=HeR_v>uJpcm z1z1)%P`7j&XiUS_>~pY62WOyQEtr?+)5n21>>6F%#lh&ZkxRUz%{DhG^;(HT53sM- z;CtvAUB)?~PHSTc0^vOL#dj(2?u9#RJUfbk@SOZ#e8}sLz@wWNtGFNj$%oLKrN_2F X#f7zLh+SEJBEYb*c068U<$LvaY_Xzm literal 0 HcmV?d00001 diff --git a/assets/Get-Installed-Light.png b/assets/Get-Installed-Light.png new file mode 100644 index 0000000000000000000000000000000000000000..ff7eb260745a61748818f00fc081d96edfeb1e6a GIT binary patch literal 27273 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� z$6f<56$zxfSQhKR>n!$0ET#A9|6}Ye!=ilG?qL-LgrTHcKnYPghi;TEC8S$ghL}N0 zxxz4q&b(YL*{aBe! z>#-@}OuJO4Dp^wxw*hv{o8x(>kK&jxzUA8W%Zx&m13R0EWpj11SiuzSF!VJ0Y!#l=Da<*LM9&aarUj@ znpl2i9@%cMJ5&$GG0*?3An<4CEPrQ^K~p;VTh_O!qD&rv`^BdF-R@A4D`*O%6K=yl z%MH+wda8e2$i5O6u>}j${GP1r!uKeMp>+sH20ZE5p`G~bwb1RuGLWvJi1c0jylrxR z{+)=<@}y0;)s^)Od^$7TbeB#BO01URtTJd$pt7;x*87rom$sBD$g_OQZ`v>3OG>nG zjF!Ig-rzkCH6N|Zc`nlizNdbt#TC0Mo`i!EhX#vnJ`^EvO0Jk0@oGP#7TaoPefM3^ z2ET17?-3Ly>?=ZwZM9{utiJ0D?{4#X?cfi~mjZTud*F8MdQ>EzK_Q9RTX_cdIR6Dz z7XhD_4Bs)xrxT2(IB+eEuY0BF^iS{PHd-*gp&;*|d;`Zu}t4r8Z$R z*wCE|7XR4fWpodEa+I(}H)?Qrg&29PKsF`FQ0_2bzPTu#J_zczmP&fd`^Qo`T0K%+8|PuZ`fYwz(C#~SEVeXJg;){jv|*R> zn_2yio(YXZ4(z0D2aLB}qxbNpN_h*YEMZ~Lw-1vc;JIZuY_gY&X%}g+p-)KshFsP0Gui`j1vdY0GSU|Qy%*?-jp{q%EaD@cbozxa^oDIEK1MK8 z@00b|Fj)V4@aOW=vZs9N$%jP8e~@f5+Io>SwV>zI6a=arS~m@~GZ~`m)V^hkr(x%7 z+=Zl-7A7^pb!O&+2m-ghcw$+b91q7v@s(_3zI6IK-ZU__5#Icl25e7?DW+VeDK3YT zj3;oD0o0}6w_Zg3$nE31*}TkMNI!3Apn1Z3z2|wqBBL=j`a!psuq``Qh40b`&$lv> ziyE#Q2(hr2Q>HeE&&S)7`!Dq0wwv6o*!;z$caO$?9%?P%zB82P1dl(+b=En6HCJG)kqP+e_4S~>v6G5>CYH8U0#1RxmQ|jq-2Yl6^-f` z7jrcH8N1znB$YxRM-9SZghKQ$y5Bo~BWyY&txKCMhx;S8>qDN^PYD_I6;eVJQcEXT z+PmPkp|&68Gi|$+3~SFzC;9)x$w)>PjIw`NJ2cS9NYw)tw|KALnx>?etU%rjL*#CThWbxIjrl%LDA1L9Fsd^&98OJ8`Iz3!onupg% zo&J8lY8%-7yx0orJ6CIDBry!ED(mM( zUz}lF8T?z=ms|+x;0s;X1d-V$SL1Z1T?f`*+eaz4sMe%@rAFSybO))l&$e(Qj*AFe zz8P3OaaTotU3lUEkv-Xnd{Twr4|*-1(T-laYQ}=TbbXUQ7|!?xzu>2Sp*T^d$8oi# zcWhtoR@$O9zxBfw_w2z8;sO1?M~ zW&p>q8v`nF-YQ1btB_v%m;qh~H@W4rJM9;+#S~?|yCZIhe9VDWJ0JmEzB{EzZihql zub^%y-onMsLI)a!$MZzn_D+{1GHw1= zPY^pN=x#JQDD8<>98`Z)2}VDvu@rPJO0)^xGru*3?4*v@M9T7tZg247lwJ-*ecv31nl}-22}u%$@PCYZUW+GpP08(DQati; z-j|kU?14lsXRp;<=JV@!r!BkEndFEBNfuTw5q7Ag8X~;+ph`IjZ{mezk5y-;)3F1^ z(PwSewB=%2W6}5p(cgb>)>P*wKD$)|efDoumJ?nv9=w5tEH5m05{^7x?qjcVz?RKa zOAI@F9yhE|<;>@JpUq~_@uM!@c zlL5JfEi`KgFI*ypT(Hmux!GZ0nno`P>B?Fhyu9Y+PxtF} zHcwO=Czx?=GEZq-7+bu;NmjI7A!_kbp7czE_*vAA(km3+=V%g7b;1xiy=w8)E=L)2xvgQ*}# z>FXoaN$&lFd-g7EEr1!?!D1fE5v0?WX^8EH&G}(|GWG^UrZrLx`R2Iad}L z*ICzWg&lO;TG?=%l0u5U{SP^lxR#1W`3C;rVTcGdh7sYcHg9Bpeuy$COQ+_yvHB6% z7DW$Ne&ZN^+zBf;671A2rDVWL5>F^n@OY~Z>Uf!Mfcd;7F@C}8(k0X{|w$fX?W6j zQp2(MjZK16vHFkIoNG|!;*O}wAA#Hc7=2d%QY&MfY?FLz*NT{&e+YMhEc5{hvi)6w0-%};%mJ?{ zzir24G1kqwRnLa6pq*2wxlU)PWA2}$L1X;o-&qOMo@`w1k{dIH#^!kM1lxr|bX*?# zGC$g!3k1&V2gT?l^)w}%-{RkjzXZCqJ9s+wLt%31Am8lZ*iMJ!$-7w80I`+KENA^yH647_-dr&%o}`wO;`!mlAa_!gP$V?VE7 zUTe?(fxim&Ju%>~nIEiuA%Jpmfjtrz@v@&iUdkFIh#TJ__Mq)cmKq6XT{&Mx_=6j_ z;?L!~tUd6N1dwjr6xnbA1-Blz>G{cpo?%TeZ*kN)6gx6keX5X@zHsldd{$RvtmEjF zDRnG#1~p~q8?HN@HaMXX)~>t_xrsU9-9ItgviLHWFdMkI06UeE`hz*fYvH1V>W6*D z_LScrjuw0%q-nV~Q^y5f^JH9&hx4V6g3r8~Sl^v|@Uis$${@G`3oDLq^zM=45O5)qLDuP58K>(!M`$`YsEhqnv+zZE>x*)DHGfop@|b!{j0-a*NJ|kjzSGFj+rWK6dn>!?r8Qt5`-$)Q973ouxdglJdIMf zEMnFO>x9A(ltj4Y;t-4U39{bw!oJlE;${!zLI>&^rt;d>Te9O^%58NU*>*OR0T152 z{(a^8`-;>;cfGvKlsHdwV(xtSd&}Bb`7G1L`X4!(iG!IedWy_&Xj280!DonMfz z6(@{8lNV!=lgHJ%hr$DdUpF;Umxl(Fve5!^E8_Hf6~2;(Rvj~OU<-_hKnvc)_0{6{ z7J8qZXsji8fn)gf#^<_6u*0>M&y-hh*DMz^3b!aSibCm?EW9P%zj8sV80>p_2Yq&e zT{qG^x9d&yE_m(d{)doMeqlaPsP~YHZ5T-(6FsTS9faD=-ch`j^#A}p%j zNL)UK#0k%){ua3B@B@m|=mgBA08!td<730|v z=4?r)f4t(-AUCKYVr#m>bP_(zf7NKRP~qIr;mA-o(>&@lV*nFLUKo7nvV!7emBH^G_F<9a&xkbqg?_g#>+E*Qztu zKTQ@{tHjmmc4#!CGJBW5_rUaU@BQ8!zZ5y^j<_h@PxvvfR#()89K4wiFq-?Eb1fU5 z1OHoT5ady1Brbk)8hS4V5Ae&AqXKUdKtqR9GueYI*B$LCB$zLmo@`XO zqmBBp+ne{{Uoe4}en0)XfBN~cz^C^88U*CPD$zoJmj|IqRr5(gGJDKzZ7}GU$ri`> z=4J+kXSCo8yIIYwj~Kv!jfdkkJ~pQ90whIG}(^QW+~Ms7BjxDwysdQcjsF6moa5!COhz62)?IR5^d-#dpyQjm*vG^ zDRyQ#q*9zX>6b@uTbDMc@gK2oX4EXR@OZb4^r7hKq50f?%3%oD5_W%rcCax~4Aa60 z;K(TPZ1!}7(b~ZSC=!bJn`|+K%v`%#zS{>Fu~24XE!Itnh(OSioR`DPu}b;B$12pD_kP(KCf& zFVl&&D|x{#h@lHP+N>vvZwAQ%oA=+kc;dzOHMqZhm$xJ=QNHUPSQGTUv|}={KC3<> zyOax@zAY(pKJ%rz(~f1Wm^e4Dbzf%J4*awL4}~wbjV#3r4Hw2Hlss6kI8C@WWk?T` zU~?3%G#y+|pK-xAa;|o&V-2R_>a}W`Z>3_irn1F~5J!NbqHob!*!Fn+skxIOZmnfK z%qR=tmTyv8v&+Q_KR-DC{?FB{hamf7t93pKZlN#3Pr)=e7}^z)iv=uhbSb8tRjz;J;#y zF(T_GVbh2rh_*Qz!g_;9hV43`%k}suiJG!x!xIW4OGmnMv;e=UXBv4O4+nVz`tz`c z?a(EfUNmFCjZDPUfCV9p)s|8vU&ABR3sN3#6upHmQmPZ2U=vZjXpGdOD;pM*1%Vvz zThWQ430uTfx!N}GI1-ezfvSPc(pJV1DG47}rvEO&y`;L^7%EEAx=C86S81fW=Bk=m%}fNW80=8d>w{$w)Hbb$$KB7+7JEh{ z^g#IC-fvmaUzwG~!M%_Gg#wJ79wN~A4~sOC$aDUsQ~Jxr`61`3&9FvMqcgReD5ec_ z>8YzRt2r*m(8TtXC5HaUVB!qLg_Xqi#|tU66wk`3=WA>13{3S8A-GYmg7@T~Ju{l4 zd~+REX({_1wY8Xdf*L8b{qfeOKP6!W8=LzjD8hz&EMYlv%6*BFkzn<=Is1K6KLIL} zc5(4$)$oM;35Y`B!%HR@J*pr<38oZ{{o%;MZsE589hZ_#Axp+%>=#l^)zPDr4Bt>0 zQ9H#Pv|*yBXtO5~=3beEUo0$?@e>~E!CnK;GNykKQ#*%0sbv@rL`aFeP6x{Su5D`w zJ5{U96Im&sxc_JG!O@3EWbP~Ai%kFhML}Y7^_nlp*zGh=S+EKyDfVq9BE`+V?$h8Q zicQEP^N#>iIz5-;OL2&qL)0u$f4E()dUqZ&eGpU*i>iXuX8DhtPm4~tm{#Fs_| zGT;2}K~as%S*dpq-?hGh4h6!MJH|H=>ZS<(w} z=!8VU^80ra3$~&hji!|L!cSNkeet&8?(NrkNN+T35{di-PmC`2HJpKRu|DoGU zJVzY|fmP*~Em?5!j^h#Y3n)6hy-kUMe*Qc`qw|MaOk+pwW>-=Uj4p^r11bMXTbEUNCyQo^-+UJoKs4yx${`jSkb%6#o z;V%vBE;PJMumtA>51*E`S}pG|($kRg+%1-gyd27l!%#immMF=|XW);S)O9W$Xr0?i zS|kadEo7bGIZ2uitW{^BZ=(gsWkC#Jm0oS~^`|m226wKJA^_Q!SjhOUM7D&JRh6z~ zyhgHvAas1!AEvQH)16Fh3h-{M8jNSU_Y`}kYAk`j9%(fDmP96d^fVFAsmzFJP-klF zI`z)+uZ7&CgO1;%4x<}a=?7zCD39$aD!UpBgFKx1=8YRus1mCTD z*IEuRIlyOxW==jiY@)veDSY=~<7$9!R9UtrV>XN4Lz0QN@tu-|-|_gLb1ySMg(cdD zXShwgDzZK%f@1g2Sq7VLqwX_>Qckl=W=DxzXV&=sv8GdHqw-_?)ctb>y|L&$!uB$5 zf~eRxFvDs_)vF?If@S%e$-~~de#txK<-_hY!_RXQsY%v2Iu81@se>!mLaIhYnA(Gs zbv`k0Rxg{EjXbNH7c%-96wh3mXJIf68?0-&R~UPK0J~4-yc?b zH56_xL0>l*MJrl}4#qvSJeiba?H$5bU2z-AQL+N;gr@1iFK&{|T`x+hy2g@h}Q%I1V$ z_r~u$$Za}1JF)roWdfgJ`SMS-b9B|<-n?Awl*B61VEMLhKrA19VA(#n{Se2K2wI*e z4FmLAIB7wikuvjMMa;?em`8qlirn5G|-B92Mtxcl=zkLNbt zec4*rqFTNvK@UbinTI6MJ6~xfZ#J#zF|g)X#>fR&T@63CIfHL0VH4o@BH1V&%QCQ^ zAejXO?38aEA>;QM^R2kFgF-_DA8vuQ!y*LpOVyQ?#$C55%oji?E~aTlu)z>MR9`7( zWs0&CjWcBGcbJai#LBom8pQRykUudK5HPhV@?hE>i4vV2#_=P28>49*tHBk5LpZD5 z0&F(bupt)3zj03P1~e|13slE}Ag^GJkPqt+@E-?^+`#`98jQU!;kg0a2M+8l#Cbsj zmdf00`gfK1C$n&Q(kX@d^Fhn$b`Tk4IYw+g$_soL6 z9dDjeliDY%Qm`F`sRZCq#4-*P=+Jvy!icqB5CXd8oqICze!y=h^wTE1;=mu8p zaDW*EB3?mgEB`|oW3EohwDHnFnicA1oXTM>m(fYUBU~O zO?~D|<<7{yj|Lu_>KwgjOkC{MiNxCl1Iby;MZC#|M5F8hd->Su=@Qr=`Prw+l<0$qV}L90J;|B~@D@i8EE!b(}5w!;m<$ z$9yqP>+HEhpHXx-=PQmC5%oz%1@7@82WE}zfYfQ8~hIw=d+VkcOM zX!KWp2s;EajYpf?1hIop=v%R5z|W&8E)NlW+NRz$1zubYg$0gu;@1kqPkFZxBRQI? zP$`S=!G_`L`Np6G^`%Byn^1g7FGb6PgU003)K{-b!;*?@bs<>8^W+Vj1Hn!-eGxs7{V!FFuG9IQK~gy#3V;SH0@hL;d0g=SfQrz?DTbK=GVIo9(S zr&yx2q7(*wG#S4=FI4523FlzT#WmW=l1qN3Wj%=C@DuS1b>^*fdFmk*+1&`@T>kI> zhs}=53(JlJzD{iY5Oeco&)X7zPk9pRx`n3=kn=-Q2TT&t4BNpdOy3Q{XAUN%Fbeuyg z4ik@T_>=!v7>6n{$H)a0-uUz;2P}~(J)r~YG+mVY$6z~* zpDDbAB|qLA`cip*ljCof7QnodQ?vkS51aCS;Lc2eC1)32%oBN^Sk!6nl(6c%$ux?&_Rh~(c4A?)11~$G2+)@ z#1>|UvlYHXy?7y3az}l?zo35jtO88}jyet_q#sX@N-vtrC-J(i_3#es0#80+h zL)DDH_sj|0I#wO`GB~j8*MHMBo|ZN^OUDuaa&EcDf_E7tBQ=}7wAJXzn1-rd#Kw9+ zA6>~VpXs+(jOV9|cOOc7|BP>l#M60if+cue_24i;V?Y`wb!2!GYnrm-_U=nM5!L6b z<{59@=XERb4WUwn$27Yqi{~-2AROqywvOJO8kHn>@H!XxEkXzMfQB6^A$o`~W1no6 zx1Q4UHCvZFWx~)|5(3gN_s=}L#RL+^HcT$hJZcyiGd{DQu; zwO z|RLEBW{mcZ~FO**+wqQhaZQw#?)k3 zY~x)co>g%I*EuG;{GiU{T7ts@HkYq1k`bmot;4mwpvt`WJINrSe zO?E`jPo=T78S{`vv)Mhgi{NN@=-|kZEy4Iz=KccSYuebyLE;|nrrYORU^`c`ImW1h zo}UXK2@9z!)>)-1#Zmae=%(JrzQ1WJuDt&+hl17hKSHc^qXK2o^&vsIhaufTw!@NS zJ=Jf{+pM}F(GvCZZqh)X1DsSI>Yl{=BhRdtGZ?##-i&h@Mn<7q(l)vIET^7G~+{H=pQ%|F1X3e;{-~ls?yF=oH*T&yBYc9 zf921kJO7#BeX)B(6pO~JDdZOp-MSTvMi3EU|CB29 z=ry~TaoLa6t>_AKv76eht;+IudFgn!_PrEagacaLh~_!=j4Sr-wfxFO|ExL2*u{Ex zqJtgbiTfAM3*jm`3{ivvLs_pf{MGwOr*>1lOfN5PvU36@CQvz>ayQ3dg@jK5qiQHS z+`w$GUX<`AHSdl?VI|(DSyHUF59&o|G(iLcqzZA)UeI1V6eY=Z-`_RvuIBvQbp0&| zN2Dvef3vvAXx7uthVm9T>N0YRE6ziAMXLZSXWdKstEbkv5i;Xyk_@HAo3vLtRqZrb zFEOJzRxnuoOXqM4kGBD`oL-pM_8%Fz`B|L8ZPVom0B2wmDF!JJ6Q{;g-oH=vsF^9= zq6`1XJbK1Yvi){rf{wfaOItU8XsaLo{iW`#mQs_SCa_YbT?R54x%Mn!kIqwc!NfL; zR(9`YUMS?f4n};4+XusPifb`eQHF zz^YU1B28k`dQFLOG5r=}&U?}z55V@bQAHi#9^@1VAsy8LLf`VLfti-_mpmEHvnZ0O^ImmZrj(db;Bz9YWfF&ZhEN$Vi+^hk5gsHA zWAxWfX`GN;95y)VIubDUga?@)mFV$aBi*@sW65M|?jWKC_(+4qV$S(ooxRtdQ;X<1 zO3{&xlfEWjP;R~bS!r4&Iw47RsUR{(!`QRw(`Qjf>=&>(g_d$^8{Ab<-`WDI10z9Wjs3SDVkPq%i-isg-s3|4=)hCDm zA%6Y%7HF-k9&G2|Z_`uFTOrXXSKVDkwT@vlw$aKPT|6@2oOHA9IH|NgmEZsx47H>Z z(%~wcJdRm^CI{06;dBeqQx-?l>REmE?H#J->|AGAv%fd*{hNW8zJ85xvD5yiz_>5i zZ}<6PaIx60iyJCbOdA)8N0G2XOTUbYaS~D$ieWvfc;?Y7^p*P;&3%De-!mbSEZOx_ zVouj>_3Cod5g-+^rS+$X9)g_tIRc5b58x5EPL z7TJ^4wy@i5(&wtoBkO@hUT>hwV-HmSx zzJEq~_4*cIPcsDY68bWRAmJ2O2V7s(9*5h0N!fqEhl>bof`IH`_cI z1+to7)piQ0LK_)3C*H9Q=@DPEYNGx?$}~;1Onasjn_&AOzhgOSE3&Qe`Wva;L;7rn zvR|uK&+hmPK+=sltrh>7=n%|6?X-uhX=U}nR-Aag(l0X^6T6^Ob$t!;)VjLcnBVfx zO8W9_Uxg=F_wS^IHBYUn;aSG|@NfbYB#m#f243Mw{q~;aqE9bL0rqQxlSQ z(%KqF57VMcM&Py2VnKD7#(behR_01CDmbna%F`I}sQ8b#xoJ8BmYbyK6Ok(Wi!((X z5(J&W@>n~wy!aYzhOgS!=t4a<#7PvUD6_rFa06-yN)MpE1*Z8yqqEXK&Gn_vK3P>mw;jk7jF4iG z%duBo7rcdy{9I=*=8MC&D1AaG5Lpwuo8Gb@GHT}B#2*0OaQlJ$zHffi`_cT@!L-pc z^NtvJNOQAo`$1uH=ueyZ5+XDKF)9+F@RqrO8pX={0EkfX!%<+)%^;8PBXrz#KM}a7 zgthMHIq6HqYO@jw!`V!KcJ@TNk15r>7u67ry-b;%bwMAcjf_pK?Mui7kESI8&Q)Xl zk3#XNng4(A1@)6Pd-yx2mZ?TF`LtO!%roG}7;?$smUPC1A?;S7SV~J`6n>8{}P!H9+?K<74~Jt4TX4a2NE&-8a5@o50wQR8Dj=!Eu#=H?#xk-m@yGRqlwfPhvDiphpy#muFd)xO}RjK5WEN>QP22qmKC{`$meaN)b2@DjK)Q(1LhPaPjcrL zj68h-_BoFQ=p1D;m|kFFpRGB(c&7Jo_%PnmGY(4jAfZS|w*?P0u|}n1v&v)N)tSKt zSJq)_pkEc?QW=oWO!1invvw1W^<}9OZqRY9>!(&NbONeYdMW$D7@&&ep}-d8WOdTH z(9*K{&6U14< zpcpN}Nfu86*6K%zMu{3THk-}r<(BV6IpP{Oi|^=APO;OL!OMCOSzec+9}}bb=9c<= zjTKfn)?Y{shrcV4ib4!7)UQh((28=a*d6UAGdDdkyoWIZKuOG5mF;Av=%*S%+{uS7 z@QOJ4watBS;M!#GbL%Q)`YUnGmGc8g{4(%fZ2Nq^$|G+}+|MY}F=*K+oaAlhf#7A8 z?mfDqW}FEzb$gyOkAv~>-p$&a{*6i}`(0H-wweB(HyFbg8RdVmz-8D{o~Gv0f0e<% zU+?)b!Kkew*wsLHUA9`yy;Nz{e`#*_LJ3M;t61dO0`&au>c+>8qNQ zlPC$<;_Q$K8((vx$W62>;M@V=yPwwYWw)9t?pXO_mIPr@waUwQ{^g|03dR6+owD21 zf~nS0>BP;F<#D$}ZRk@4>4Si`lYhLvfD1lus!wfZZ!Zbb6vy5kAK6qYOo`n`epP4) z+orhRe_6TkN;eayfp2$rb@Ae*X$j_3%#E;42F8fK@@u`)yYhS3^aT6PV8PTK>p`A6 z+!gV!;)&~6KF$PUu`usX&kORD#o??t>4mBk2|6Yom&9dzFUO%n*hYQ(1pYRS}tB@sh+lzU^)Yn>M)v3_d z!9zi=JUZ;3qP#;#-waF%Wv}L=7gh8JvZp(@AjT3-^UIZ^J(|5W;`4+n$JfE*@&li5 zgs>VW32b_~M~z_&e?rh}f)FBl5h?{)2(xv=dqv#XTMH3wSIcUi!?;8m2_sCu#Gc3d z(tgHozI_kXU=B|lBI5Y=TDWCq=RSu={OQ6<2D2F$DHebRFk%DF+7s|#-PA%(Q6p|y z78>oP;sJpfqb?nf=rs>9F^w(Bhb2Yt6`X-gy2mVQk(vGv6W_ox!KGCVb5xzi8&fjl zEMSxJZC}mbNwn8~V=GYYb+bwm&=9KsOC9e}NCfOC5*bJ$UH<0Hy8tik0592s8SEf} z+Dcst(R)-{M@)PU%=O}W8xG^re=<+O%2!m(3lRY)LoDLvKO-(-G5@+-u12D9kvqCb za(S-@sF>Yf5zt?74$pCHxAUrsMz?vkGL`=W92@?p{y*y53)r82MrNxp~EMM0{)aLy}ti z8J#uu*ytNA#dm_G+%en=ah~@gg~mjuXIN++7S?Uw(3cxga$9e(W4G59Gbeppsrz93 z>rCT76h`bL-yUC~RE5H%D5bj)eq;HaypEy3soGEmaa=HUXTiOfiBc>+$9UCX^ewv-|Cdry{3v zvqCxFe{1CLGl658``AKMnt6qv8k+dDjsKrg`>wc70^vh0%SVemCB5X;YhC5$H2oT# zJhW2Rd~z-+dF&a91`xKU0!};jAv^mqCRTZp;jbM*TPX;|w@iQ%cvt+Cy4FvbO=2Xi6s}lSYQky z;jJOQXFL z3RUw^U>piZv=AfI{9FU$2dR>mo!S63sNS@6tME?8xE)zcK3X^2Q$94jJMRUz>vY=F z23kO4iyd~jvG;IpbP5p!p>O<@tH${k|*{ znw`(kuaYJcSU@$O*A^N$Gcv>rx(w8-<#6dELgn-i zs_)dPF*B6g0Yq@k*u>H1mwn(^9cDw(urMbP6}Jz6q#tYfH<pD4CIMv=3NZ) z%Iz?<*iAEa!`K{#4M)!%=5Xg}5*dUwmFyX=8V4plcI{)Hrw}l!Q^DbX{Qf(Xdd$sD6aa-^+C!>#- z&w>LoQ_*Cu%n#XdLj$#6gsr^_RMtr%%dR+B)p5GVZ}q)Spu~fRXO|>BkN_}ncyOgmr*QPCGi`q1q69>TA|y0m45U%cY4O#CgL(=(z@vg17dTxtpXWk z!)tqP@B<&+ahvqaQxoBb*AQmm5s8euPEVUTm(1}Ldqb$4!R^o&F83n?81B)CK1$EV zLd^l70?S&q2`h%GO6cgw_>yFCW?oN|2*jP5p z@QqAo^b{wgprP^e2fXDELa{N1KU~svLoBzv-M1#s2o7EiVH2X*N9SkA9-Y|*8hwvJh37y^{!@;C9h)$*^Pw719|oZqTyyU>KW zU$tjWS6<1+rZCWi!}6ucPt&?*3b60|{}$4ayJj15qp-ktLfT`+KPfgxu*u|b(%3IJDGfyYaa!OmNl&&nurk7%FjK@?%jM!%c1=1E;|;&5epHs?E?@s6 z;TicW;j#ZK;pvt=#52)|=P^UmVO#6E*=4`7dzTVOP#_i{-c|YWiwDd&QTTstVHNN%a`Er$<@POvdJN^EQFRfz{>UqJ|`iDXJtU(+$6 zebh@qNB{D~zOuNwY-7@yCi*azv7L}hlbxJ|lanNdo!8)12h1GeKL~~Ri+@Xc*6(?r z?cHHPb|}eZcX#jQbHiaGu&l25jz(8p=WC z48TJ6wnQK@5kQPZH%RhKkIt1^%=Xp_rM_dN*V66ZGZV@ZUWX#)o+r zBVPId^a027zGp1KLOC8d)RQcKga&%q;ZYqMqwC`HEJAM1H_4iO>vd@DK<`$*&B(Kr zHjlBewK$+-NVv~0Pq9}Y7c^nMYT#CyVe-6~~4;rbO_RVK>3UM&0TJ3cZD!6oO%EPy#6%k!u z+XYWW1J^&+K)rYZQryQvckA!CFWb=&F^vaQMk06CYG3fm&47%emiOTCNivyy|hs7RFM_%i>J(`GB~MKd)}#13;;W#a@eYyY2G<@7%DFRXz)UKg+4Uhq{B$5Omh$E1$v;a36g1CYnz-I-FtvLNgZ>6>ZI5U93PqydgXY>iakTQ!#bh}L}@ zmPuEA3(l0wESzJ|dHXa&4U_8|idquY`gp1sIZQiU!+1fC_(oQ#+MRKReZ=UKj9(m{ z8KZ->u6`R_)rqRy(;f*fic_;+Rh?RW3%I63MkgHK1XOKW(w_8gp#5$AxRJGv)kHzH zu)+K=u`u4BE)3^3S;GJA9Q67i=7%}*fSBU{1T&CIe+<`dB;?6d1gl-<;bB>{spgFR zafyiJr@>6d$jlo+!!jqpr#umkRIK6x)6;#K=a_pk+`$4gGyX66IFA1eGj1srP~g#I zFUVyyN7^yK%-2`Cqi9HSjqEAqa%bL`YqD_k#^HRf z_kT|~-*BaA+MWs8qYvb{Xka}uDc%8QDANZbKX zLljXXab5(>?PnUkOD26XZ452r%ktOMFaJNr&cdy#Ze9BVN+|gnbfctncZ1R(Dcwjn zELvdEjndsnr_v?eAd7BTi*gZ*u5aRg_c{CQeO=!<|G>gI9AnP$JkNdqZYG0Q5Fuha zL1x6M(DSb%t(=QoCmKFliknn=6TZN$CDx7zBi~w50B{nvMj{SjtRLcv^wtE;nuC?n zY7@z!A%|&!zu;){$JW;cQ;#lwyg@JGrY&(#Ep*lZzykfac;X+#{tXy5qRgix0KDz* zh8$_G88UoSAi3`@n^LO*eff5_A(g@Z)R+Ix-3U2YaPTH6-Qkxwxg{y`&EP+2o3SVH-kew~C%=?TUzk4Z zzKCkM1vp;wX6Ts5`oZj;Xq!_e$9hlNLU{oq)otPCqulYLeV*!xqxE;LQs44HbU1!` z>Lsd`xaH$-o4QN`Rj5nk7reJyHjL`b`U{`0>)?-mR4uhm-4U*w^2g)SFS?))8?3sv z*j(zH=xDP{^Bri|hcA_Lda-;FVjQtq6ukMMiQ;L1_0_J%WU?I#^K9;POrjJmvJ=KP zM{JxA;}YmWIB;ZS$Yhe8H-WM-3!-zGZ#V%PAS`w_wzFX*=nzm8-BKyjp$mY?NPwox z_s8HZlOU9*qrxOlIC*Uh8XWVKrTZB8ZuRy&c*&4DSb#2oi3j{c&iUdzI3 z{|(Fii{2O5+PjTDrG`_ao@pVM>m_{^-S>)>-zL3&PDUd&%+@gJm%64akxJ(jcClZkO#Nw8gmi+oURYlxF_EYjWy?7BuP4ra2?G%jV z%!K^x^_Zup_D2_dP`Cc#Sxr&;l|%phCDx2BFIL!I&5F35%h~i$AJ^{Bjw&*%(IH=} zR?#1N`1z<$q#s{}Dw0uc#VnazC(}vzv2FE>g;WrhGD;S83oOad$De~b)ZV1^Q=83V zn(_N@l#`^`77~y1z(@!Cz4SJKjV({U>3XbcF`vxPy_+3pe40x7bMkirgsUxQ1O5`) zAWhv@9d&g;Rzp6pBGDoC-g6m_)Nl>zT(F=1xiYp3UB0}sB|cw5SY0(=2t1VOj(!zM zw{#W)o`EZNkdOK2bG@yr@V+CBkOLXMzIoqe`k%gc`X>UD=kY~zwZ?GXU0}J3yO)Ke zK6t`+mZnHt5^xUbsC=Z;gmB2V^i^y3tw5)68}Po+`=XikmLAIEkYUEJ1d@$>)BPLpYQ!>F@rn|Z;|B&k z(ok1@a0@yrPO&GWs7qW16Y#Un9K5!#vF-))C|go2I{ebB4zTSNtpyvubQnDDYG@iK zj&hzMB20fi{+d9dt&z|;#`(Y_aK!`^a$COaLe7Cb=qoXCgn9-0M-8*}r-pI*BXj~h zdq}3wP)JF~<#9L@6!PTJJYuyI78sgx2+f)*_cxN&N!S5l_k|v3|Guu<{dc=c>kGXb z;qDd2QQPz06@&C2clyrE9JHDT^hvZcD*q!*cGKf)E2D<`7(m-z|ODR~5PTYn`m za>9Ju5~*NUj{nz2C+3UQt&z>m7H>Ax$=(yuBP{PjESr_p;1=h?KCkc!Jd{CVRw>Tw zC>V9_wh*F=IbEbOrwF#+c?cw!bx_ElO=tN2WLH(^9&&kf)lU*F45|vZD;AIYEdhC{ za@IU}$o*Fozi(0}oXw|)>tY4!M;tA&uuUu~+C8#MvECzKcq=s0y$9MISy_l~-|tT`%ZGqDn5^YFUF5It&$ z6iWXt5|!M|k+5prQ(Y8D%FMGxM!%@dv`#Lk%6$TtiizQXcN>$@)b;a(V?xJ$3H$c* z3?rFe*u5oMhbiG!XEu9FYS@0nrk(DJ`4?V;cW03vq-sxgkFLJKew>oh!W1esXM0Zz zp}$tNLyZUbV>@9sbW^`1j(#&tsz|{P5gE!~a*7|0HDK?4b@;!UF9O6-QhLjIfG?H@ z_eKC1>10|P1*tm#Rbu`-8J#4PBi2lRzWX%T--%g7h79s$w9>MVSQ3b&aeFZ_*fwIw zOrgL?)kNxo!kz>*JptB>inN0t?>SjzNa_xly%Z))ME0sgoN6#~uhVfh{BEP^LgDPX z<2Ona9Wc33%By5Tj`r$y^+bCUB{OQ|;LWH=vAW#rwbH{j=z7&|t-cR`atE5a;=O5c2+XrB?jiU-1v8Aje;Nfk>^>+zvh(x0j-p5LY&iYBgMM7By)e5_KQQkWZvHgiAUZL9*Wzs#~+izVFfOTQL&N(v?oNk3+z!4$4atV<{_q ziMJHZ#gxi7S2}1OhrKFz=RqZ}Gl8}0s_>p;sqaT|(jL`>>^evb)Y{whOYA-A>uH(R zvuj!1=g>wV_M<_?Kzq7)$CyY)8dTZ&TSfhNmy1B(vi$_;g7Rj5n?pR&eLfbZr{=>9 zxni@~fZLp2T7>Nt21eU1J|F#gSKe{k(Ej#3_0$}5TYJsjshm^vQZ{Gl+lvNZzW$PL zr&M@>tkr7<42|*{S$VA8U@;+LzX+isO*j{v^`&V@!IYSAmh;h2?81vbKi`B8*MIr5 zp0PRX4__YC_N90}fe4pV<+kRQXk(Geh>qnag$Zi11z=kDAsE|li4uioxGi^#+_Its_lEG{tnb}fEz z&*~T&`;(b&rTi{obW^}i#CaeZjXoN zA!*Kxzpy3W#OdqX04EZ(Dui8IyunZR= zvp?=*#=qUibmle2|Fb$AeW(tL7PMH18M|_L?+v*Bg~Au6D7Ga>gu`6U;zSb5>)&mUzF(ol}iXrd?j6Vmkv(J4(ff1NDTOWVz6|2v8QmF)NbL~G=fM~FiKoD5vh;cF{0Ed&~!;?)C7Ol zaOn{pNAvipJoUE5t|rdndZBr`-D_z7i@DpA75x-e#~U4JPWmIZ3Zu1_*G6kMv>)&0 z?;Q4UDdz(+i5m=_=t_)*`Kb@eT zWdJX{ImI8gC#RmH560+N+9Ngrz!)9!JK0S#RIwuy{;{Hbj0OAbPMS=WkIH_}hJ%kX z3#}%xk$lU4$q=%-HEQ~6bE;vksdDPa-B&#$kO7n5x^50XND z*$yNTPA3dz>(z?Pz^5<=ieYBxE&Quh19Li|p5&3gg$XqG$AsNg-4>@lbApsC2uGYRrpx|b2ZMZrH%Hy5b*=5Q|0 zPgCTHc&W5ywryWvMq&FY+%Q|W5R~h>MqJdM);Jz%^O!pcG4DP(p5-Z|_P=cre&_ml zbB@JLsE|eeuER9eXEw>%sceo;-6hf#5d1pQSVy-S)s;S1EfZdzy1R`K5^wDn^fV`T56a=ti=$*5EpzySVFn%Vb9)wVH8;`!r##xR9Cr+)1u zDJB|Zk+jz0{PEh^@VI8n%$CIq^YO|~92)qsVT+;G#j+7fUf_ZGwAQW2{c@Q{Td8s* zm*k_s4xSIgjz$Y56_k&buQ<-G_Lsn$1r{~W;18o$vybS58)kOjckDoEX^z2)=17Jn zFgO9yt{cOrd7wWl6ooxU;*-GtX`^Wj( z-ca~JYDYH5hN4u=+bO!uuakYnPej+?bJB{wsLFkLl?JRXh0j z*#r>*0YV&*c8Sj=l1Odx5qo-08M30hiCV340)=%(CNUU_&K(iFoAC(HNY9trBqWR_ zVxxyqQ2|BN@}D9q4+iTr#LHC^{i>jZd*nZy(xOA%Er6an&{kBI*R??`(cdhkDn9T3 z9)cy1xk)V-sZr64x#Gd_SvnEYZiV)RtL*!juJ!IA=d3v-LSlwLo|jBdabt9knZ_>+ zvfYz|r_0}31imRFu)))9C7<9PlPlVVc{9fB6JtwiCF4mv4msUi52|yLlfsS>WX+!3 zKnrwl!+t@v8J2iH{!!qM7R}|qv}kca8U#hoh1XAuDWN$TvGB5^d7H=Ty&7>3e-G>Wz2sP|-`7}vF>Rcx7qAj5x(1B*_~ zE{#tw2S%DMqw;Y;E#JL#JUoM@m1>@lPYJD`7-x~XaN}%|GM(2pskcd~4=zNX&gxo} ze2=iAHIo6PJmFlEBUYk;&2#Db1nmAf0n~rdKJ6<2V@A(`Q1Zw!koIL*tkjDah`G}9 zzVNAGHE(NVP?vX*h^MMbx-j%J)NGpt2_9Q#Fg4&L|E2>T{&V-(Hoo-l3H-pgkGoaY zXP7@-okc9mE!_%*N z)V__yk0|6Ron;~Es>E@B4UqzpDvo=JEr$yHtHBa1})R45Zs zrnAH;KKvtoW(=fW9Ow*Shx)WWx%tpz#{G0y^8i(|#e-2m_FM&_Fw;=|!=}%I$De92 z2@aMAl;2#di@k|+BtmlaEQiPt#*tY`6cG+9gjQrnKM3WtWcXWr=_-iFW!f@Zyk;=Z zxLQ9TKGH+oXFWT>_X|Jv;o=)?m7OUeh_A56rLaN`v7{8+0KEkKAL{1q$t{=GhorCi zzmY!czYwJ|d!3hyUwv+@64E2;f^6&GausU^C*UG@DbANcZU$c!EKa!f{us7-`gtc- zgYc=qJKzXB`~OxE^+^_Q-#%beh5m_A9nv@tp1(KRPsX+5_qx~wiiih_YTT79iBP$> zR?e>^7apfSXw)yL&S-3pd&j1Rs|dDn-b3wPElE`FJdHf<p&>u~YYJpD5 zU^W^vAi;Y+NFB%qVMD-g4Z7a7?_3NCu%gE2T=9a6Y3X?ZYF; z^0>YMHX8#l-@@E^$u`~ZnQ8=Bfl{OrG4M);Gk(U@_CL@2!oJ$Vy*PGOZA%7{`B$D% z*dLxzW&a|01&Pu?<#e{mAtjU7$f_L4@Y=Xsbxm0Cz*@~}$= z;i|_zBq&h>=}8FGcvryY&H+f@qA%y$?#1=yV!Fbfo|)M>=dWMTP;os$qn}N;Y#`s_ zeScX)g00hkz54iH4JNlj%+N(PMt<#oMeQ{%Sv}Y62)E z%zp6i9Pz3<7OsC7`3K>M$sBs%RH(-ZI#zvgc2MN@Gt{gG;?H^;~D|O{P4_GU}VDrcf}(QX%j~skmE>5SUHVJI!RwfY#<)$m#8MI=zR^FVb`r>Gfw2 zSVPMM+wexFMIR;@v0OiB7=uq01B9WpOr6YQN^PmrSx*5z3V?ly!tMM?2B%0*X^DmR zcy4Z9NU5UP-d|oR8QO*bd4rf6s+DWXY?jO zV1r4132y7tjMru*n3z~E5?U{OdOVvyPnbevyZqUT&0|HrYCZt>YbLN)~wNT>+XNuWsN7YWd zAneWjUjX5T@`0*^EQV3if`i}E+-hsbjRHdZ7{U&y{3hy0)kJe+q{%ccfk4s$J=ptF79(`M=e(egd+E_f;J8Iq^lM?lp0kosDPQK*EC`*?1k@Qd| zpQX)jE}0#lud_n2-?;>jBw^~3?@b40ia{^<=X$v=OgaYN75eQrURm1%iPqmQ%81cy zE;0aI8G)_RdbbD7pnuFZTW}a|Hxkwpa;a8eI@;H-3a=B@Os+-d6PHdMz-G7Fq6hLx zPLbvO(jnAt=^_mb8Y}~QXuFNp>w<2=3p{#_*YW!JdkryP0!6+~%ge};qpRQyW>0Mc zb}Eb4r|#TM7_Cn{oAPCOR202}HWcn`4dhTgS&H`I5UhbxTnRKWj7U5BuA#al&CMx$ zYWs_G;gWtkipfNOG(_~ylhs=VpF(SS_k3A=^a&#BbwM*NUtn6;N+*R!{YoJovS4iX zRqK39x+#n0BtMSvzrE`0bj1JaRmVi-XNy&cd_odC!&*hzY||Zk1V&bT6|sp7r|6il zI!$?gG%7NBfZr*-Oe8eY5mxK4950P%)+5KFC*fm@Z*}wW^$EDh}6p>RCV*= z%=VTDg$Z1@V(t*5!}y6nJ2zt^9pmDafJvg~_HR$RSRpguNx#ya6365^TTB(C=#yUw zWSXswT%1galgZp4=dF&`Xz+yE#4%A#@md9#ffQg^(OgTCOXd9xu8z!=?cONQ=y>$H zP8U4C`{p`pL*3bH3enHji1^6%^_BIvJa$k3DT@9fx1{$y#1y?X_{Nx;LQ{QtkEGid z_9{Y>rN+HKZE9wB(<8=IJv8TMTSPo`wI{RD4HbjWZU*(;%5^^|bIG4sY&*i6W?H6* z-PK=&gn_L2_ju(H$h-SR->8@ z*r1EbB&Qp3Xf3;h!CP$3^jT`%d3y^v#N3m8HsZ>jvLO!bdfgPo6mJFm%H7=*iG$90 z;09hXP*>zMwFVn~b(e@=L#LP6q_NDnxvov1**jSWzzPXAS#|?8XlM%GnW%K&UvecH zgyv9=h05l=8ChjjHTkLbA_e^Xv;Jl-YG|h~0pHh_I7taq8AT2>n~BrQUi|#)m%ktk zJDxBkmMaBRP!!AyN9flBK?)|oAH_NvM1Vc4;(wDC`Ipc8K;)FXHD$@n{R_SiYT>4F z;4s^bmZO_Ft~p^&JIgvPi=dsrQss71xs721x!q}-?akpp>(OrTHL$hn(f@1{U$J{b ziP%_eILQ%dqD?K#)$$+9fHta4w_Ek)VG$_2>d+=(imckSDc(d?0&qQu(9gm5`DZ?t~(WYI&+{c*5cEd!%B1?nT5iTnpk#bV#QS@}gp19z)9CZj8 z^V^M)c7;v3S(RP8+$<+_VW_!>Un*s}sk-Ik8q-yye&!-bPQ$T~nRl>!Lf*-i3}Q`W zEks@SFF4wQn$U=wWk&MZ9ntC9@TOqw;!vMf@ul_ zXT;JR?x4R}{|OrRaK4cU^YePCu)jmekthzUZSJ@6u3ZJo29bhM0f%jxV&M7f$@G4r?J7i@^jVwN@eeKVTS~Yh@rF zVa=4NxFobry> zJk_HT+Gd}B`9}q!g1W3;?f%_2PESaDv4ABsQ{EF z<@~Y{9c<#T8)ZJuR6X*A*5|#E#Ln5}oiZSjg zADy4k=gv4O5_LA%VkAXU&bi}iL0!~2(}2!JND@JULD}Qr__+ zia>Gj_VctVUP<6odYq*1XFj^>y>r& z#@nWPm^Xl#E@!K*73+BznGhxLaa8}CC8cBM0!JEeZ9v(FO3^WP-TyI_z(a=LVvP7& zU7e55vVC`081<B;=7jw})Qq9rk7d1BzF)adEDt_xCSM_KJI#WaSyOudE`@}YyAzOqW!AbU3(Q7Ha0Kly?K+@-J52I3u(Vvw(c_UJr^BrKiy!#KqD7=z1?YlLUIQ# zS^HuSQoQJ3gk&}z+!|aL9Ztt@tu6Z9t6xl;^@WJsUM(L6I@^slgvaH6bV;ZumIv>* z?rjY=awU@u?|)@iP4l`heR!=HWwk%wcJS#>D31rv2 zbtS%>u>CRC)IEDJ)~r27F=6dR>J4|*)iQpHH7N7U?`=Libtxf?YZpjC?VrLC{?aK! zU>i<~6RoxkfdzE-4~nj4WbERkliuBmXz`-8kL@P5~=N=<2OKE`yW)0{5s{M zf_?PqH*xqL07Kj7U6@n_Sp9K!$aL?35}tnkR_bt+2ZS7@+DHmtHv3b zCGRaEk%(wD%1A+St#coOFxC%}uXx&HT(o=8!s>Z775@I5+A` zC;H;$`&g55NNDe4u#yUO|L8`-K}5iMV;a(j897NDJjk>>A;%xQST25tihniSY$V(L z^wT|^8G7|AWW3-*QmE3;m= z$CzGo2`u}f4Hz{4VTQrnCm$S+l7#7=Ke-&=<57Z9ma}-tv3YHrG*pv}NJ@D%Jk5b$ z`_b6Le|STU1|DF_@4L7SU(JYmKH1G5mr1tEP+Dn2Y#8AIeG~n`dGNs%G{J|wbDN`R z6N9+QF5`fl#F;Q#NxCjOP6e*Tg?tS{F;J<@0xxIq2)#J*yZM=3_3LaSj~ek=Ngu+J ziunD}8j`j%RdXe1;N7RxrPQVlVdU_0w(mfRa1J+N3V(Uy89_0a*bbe8w7=eOvGAFH zGpKmIKeQ1~2hq%^vG+LGLF=_8+YwNCf{1A(B=7+%zy-W=%VtdR<>ASrM{u(#nSJ|F zjX?ebK@z#U_1c-oYE>+wDxbx}AAEEwZfc0KXDX!2&1V5Sf*$v&^3*Gtf*;e^5l?Ih z48As!Uns^4-Xg(p8Ch!BXwJnsEhN*6Fo#&=MmjFFrWvh;8VE4(7GFcdGBp!W~l5-V8=Ovg^ z#nt`qznYCc4(tsTK}~tvO+@brKVFL@=?n`k<33hgrf)>&MPv{B=-W(Pk;@w-G8yR@ z_&#uPns@T^_O`metN<>lJ}xr**PD;Lv^(jdJag`^ z#y?7p@sF{L(Osu48OELU7aJWsrmHcCy{^gW=5BLK|=TVh=+hPi7HnQ^!CsnVY} zaC4&^%M&{3n~f|@BIn0yun#eaRl=zmA}ich>d*pz+A<|7`A&h(eBlKx|D4*819R+=hQJwnU^ zzg7DPV@cT8g=p(x8J*rZ`z4Hmy~hQN8*bls7e97mH``5w3fqDa8J16MFi29jvsZ;8?AC8_U~i{b=*_b{ z^m>o_Y2j8=SS7x)8QGrMEH_86$PeVZ+W5JyRp+g>lXSJ0aU#~V$>mYYvL(g|fsFz3 z76h+2RrB3}^Y9_>TgZVs^}i_po#EI+98aj6SHciov%YVd9yOK__{L+LL$ccomZ1*>R7l*9 zhXsng>2dHUnF{R)lVxy{#m!jDf-;Q1GrE5MMf(Z7ePf>{dsgba)0qlXLO{ljf!A< ztX{ZzMzqdT4XKZwJn`z}^qecb()(hdB7^d>%4TQKVa4DZUzb`wT$0hyd6lBG(@60d zzmW&zB$|28lD-h8mm{1WG0Qnl$+>xw9E*^>_e7Rb z60<|1Xe*Z?Aw=hqoO_L@C%CtK<{50a+eBu?Kqi_7CwS*0O)1s}G*88Q=Wc^mw{0fr z@MPB-)$asj0YaSR&G}RYSlVOfZ@&8%Lqrfe^1ykAjZ>ny!sg$#3c4C%SBiB{uO3}W zu%t|Nnf?OGbMYeE(vRMoK5@5QZ0b}4SVDW^m?YBPQc%lDbNZUgsWU}wG}#mdyF}N) zM9Lrdx%_~52={-bJU~UeXUC}Dn>-3BAn)SFh2ixUS5rFDbK1<(MzJ$mdtB_5J#7!% zV|6I2oBUpa+}^$II=uJ99xRf1t)%2W?;vLsO{0KMB~7%6aVyFYZ<}cV|8O`#is>9! z18p88DG^1%C@MtriRXWBiFlz`PXI zK^Kk;$M?r`Ng?Fv&T=~rekOrYkZ0HJ``T~qfXRM>E_=Wk~6%0en7f>AO+tq<^HjQUv=AZ zF!dDJrpIw70H;-hl?e;QKS_8%cyXPW0&q%qR-5x0b|`OC*Q@gKKx>>6EN@neS9vP} z_-%+Kbl)E5F-!+Inz@SdLzDZ?PD%);Lyk1eRscEQ%E-~8L`CD=ZIQdqRB&iqZ{`sD zoOGdQv}dN{o8*>XStnOAT9yv^(dYub={O@ql)OT%HVIlR&ftb{uE-lcrkY=Sucp$> zuCVv#%a~p4mrqltoX+JdwQAN*yz#O^)dn5D-a!zcI_Bo^42yh zpUnGIUxo6u?@Eh`i6vNL&xYl&fDVi2B<;ay=rqIp=TR$MP-g35Bm`zSX=1 zgbVirU6lu3z|rS8=BFHg-IA6zVD_{o!y@fMg%MVpQxtzZrOG3v2g(zRc zy9t42yKkEdo9Pkk`w1@X4BVo453BkA4=8DswYHk5X{&!yWI6)BB5ZAJFVtiyK9(D#)2+4+$`MQnq|RKHNWA1-(-jzq&zJ-Fl|XdKj7IN!pQQlR$V>G-BzHdTE*rrj6enW!ichyBJ|tl(noaz5DDT0#WLGIx(u7pYJ&P ztU*Z*tA_xVy# zV(-t4&v)8uNf;3NP4G{;cLNeduWSoFOdbGeE#bt{l=1JAy;oR558DiA1#Ff~qGX(z z{%Hk-&cwA5`{t+3qX_L8e~&9`B#-x+H~G5xHEIPsBE3UdZ;N`R;9~?Z1MkJdl|3DCEHikea7#vUSB5wrMv_U(Aen-JhBY|L%6#W6N7EKhK{J!?m{m)XKKLO|z z{N)+m2vHr3R%;k^a`n!K1s%+I^FDb9jQIL(%I0q+;fKGcd@APRX8$(j%Qs0c8u3{D zEmNyY8X+0XS(7L`&3@wszVmtrWcr&VC;LB1av+okl3cijNt8Y5R7y zyOY;*U-`3|cTcNt+I?@gt8O>n)=YA3<&WLNPPMI0t_1CGFXV`>eX87AJsmQ0`LX@F zrwJtu40qEIz$U$Pk_`7|X^GzR`=Zbgz5nY-qUJ8p)M);k!$C`>-moUpBo82{}vYmlR z=g@SK`veG~KOZgjYk6J-75WXjz7p^5)Yiy?_BZ|}KJ%JmUIV_`Wampx3yy2*Mf*v% z<=vhQ%Q=1)?&@vFnOVWk_qUpJsknht3Xg3r@a!Wa^Muxmp4GC?)4@tw?D;uSWMoS1 zFTmZ({2zi~ZpWJoMGPL~5{>Jpm{Y{qGXV^eMUz~kYJen*GC(x1zicf?<#YDQ5p4ro zjFrm9BUa(rm|H953;IXL6zdPr3rbY%8tK5UF^+u!wtniguftZ4Hp>^!vuo;P-!81o zyc1UKj;^6v@tOx z&hIXU;AEkf0(Kx)!Q=6GhgHVi(+&UDlfn?=yO{Rm=MD3|-Y!AJQ##`aM_)z9ni$31_jV2%2#}i1Wc9&^kaR0UHB=dA9 zlj%5dtH;8YOy6~|?Z-sXd6Yny4ZO6Vp|!Gr%;>woui$}iVN|BQO@;#?E;+) z8TPl_@)`$@FV5K~fa2fV?sGW8&l#)ml>om(E zejc+7$Ko*)o*k@KdRakD@`qGM3Ra>q7Pc=77Vb(F0}AcNn+-?|wHK4${eBb5SM=!u zB_S ztS!+{WhDQ59OHu4Lz8;1POLvq26j=m5x0O4)R&&X-ziQI+;1A3S1@xpFgLhx`ywI& zJp_ThL3&5CsS5rXrVW2Vf|#w(nt4SQzH54pTJOAOBLTo3K&zhciz;nrdeN|t4k~%X zB*4Jd=>u;N5xg+3I*I3m2E`=4&v?@!E3~cqDDwGAfOuY~33Q!5H6Z;@^B4{l1Oo#0 zm@I()cYzGh@ZXv><)R}(lJ2R(T@(mQnBP^SKP6(KaYp4{(0GjXoJjD@%QCqxoX`2< zq0p5hr1iO2J?vO{^%GqgJYnCmgF5%sn83Gv>i5Us2;uey+s(b9jk#+({7SeW8 zFY+3{!=p)AO3x6pxdy?D)|)pXHaxEW9|Eqo#v~+y!MGAz2j>Zet(FRTL6-`IU;Q+; z>*{5v*d3hOe(Rxu?eF?3iMruYb!~!7HHrP>*KmD;GteD2o6hO$$^{Mx;ZR7{{``T7 z^3c}`%=6p&Cf{>eNQ6d5oWI^@luj_zFp|@ny^KIlPU{s>hCFqf0EW}Aab$2?rV2Eu zO$#m8t;Lqqd10t|JL9h}^pkQA@~Jv0<`z#k-kXbruFcjnjHJ;fo{FNK8UZrQZ<^)d zmob@MD!}YCm!XAXr~I|HJslQmBsQ_}A_V^=ULR^2@ivk+wv9!#t z&n3okS%7X&F}`(LYJ6U9pJDd%;xESqRG>dLkk zcfFiFs%Kt1%t!WT18{PDVsmfS-C!AoF!FpV@n027!l?B?LI)R>g8Pz1+V`^0F0Ga? z5lF`&`s_0K1Euc8+$h=zC)r%Gh$bGHPcK_A@${ne`gRdJ zxvF*2TOXs}ksLC;vs1z@!!VAXO}R;_!{nL>42!{1@8`Hz`6ui-B~=|J9mxGxBJ3D} z@)(PI#bIqjLn@l|I@eb}$kN4F#4jXS1opBSECXc@i&ni>y@RftIz^mG!|A`VU`K1D1 zJ-ZrCJy=#-l%gxXgw$-V=w|v-50zKh(W6l1$WswrVA)0QX;arGBMu_K2T@TvLIZqI z(VfCbSGO>Te>T2@$#e0Uy$fN6dv9`#VZc`QI*v;6Ube;$7DL!P`3+hm&bIjJk3ckz3r4it!S zCSisAv^!Ecgt3?|nuY|`evN*-OPhnU@8KtOrtUjv%c(fQs$WTM41KS_!!2=433>^@ zj^(e;*)d}Eoc&X=oBRT_L|99$63Ba5VBUtPff|1Hn`H{Aq5OR_#{LaW#fbar zjBUx0Bk`#UK4ipIhcE2JdHF>JMEIhoH4l5gJa@$`yLKPs&1sJZyj$o9{=a#ltsbBL zFXcGqxy-u5o5T1~XJpLRn!}mI?TePIN!SwNHzfU-&y9pLT=Y#TrBML-qK-_H??s&5 zt}gJMe@U}v%(|-evvZg9yQeG*#(%(GurH}Rw*TST3nLe^4?Gpz%+xoKp7qkkL8IJ75UqW$=Fd)veRgy|ca85LPx>7)y680xbTxX{-;)1jsFf*9|^+ghXnIr435yVg9S zH|xua9N0|mAB~2+tIElR8Wa*DhC&D*C%M+*HiZ{8$h~1_I&uNfd-lsM;dONo?5Ye_Gm%Eic$3Ih@Do>YtzyAm4&T5{%CDSyTTBrE-D#|t=%+nKj2R)gnBb_S1&;)!aTYlF6W9%)X z+Tgly!Q#;3QXGm)DeeS!_X5QVd2v$Qt++#5+=9E6;!Ytr#VPLY76{IS_nSNSn>%aP zy?^qDtZ>dg+n)XGeU8OvgAG<4sTc{mRRiWtz4_D66s?;?O-kNz=t49@G|iK2J;f5l@$kPwxPMZ77hFWy zuw(YD>Dq*zhr|B#Ex+^RqAmY_ehI#Kn^e|w-q-15{-%iWnqdq5^iEeU+4F|m!NjEv zx;?k1*WE%vw(Qe=kwxjAn~SSyU{BY8fJ!u~qLHV!?HV59jse0a1qt_deJZFK{Gfxx zgLnLnEdD&+ThE$ z;DK)~`Awm)GRw^OfT^qF51`HJ1OA?`c3U(MR9TqiNS!w8Y~eJr1p|jm4MpF!S@IRS zmoxP*9=BuCH4|4hmX$Hz69+CZ{3a&zGKjY75hOf&9fmJV7iCt~t(x2Ki4IU0l<&FB z70B#l>QmC#Zb}`yCC(Px&6Iq1!U8VpQ$flQaIjNRg>GQOq^xAhxV=_8${wB$M4prb z4)@l@%wztU+`R9Y(B~p0G^guN9RNA1x8W?~tSha!ZEJE|d3Mfyu%~duJkOb@+LUVC zwt}A)8~fZ{?-a9vj0=&0 zIdD~I;bS9-I3u%y8%|~GcYSPD%zE%wRNBm0=?^e-mz10SX+1(vBqC--!^fn#4%yj- zY$^@p1NiL;nbO(_uY=p5daztOj1$S(Sgi5~e>Y4;FWKoid`-u{=Pjo8d1UsPboXyp zU9|m$3{N_$FA|xSTkIT?=1^ysyyc1fA#jy6s5--nb$M4IbV@YShJM}}HJ9r}q$6)e zz3TV(_RT^OVdUZ^|Mv?GKShYk)`yQRUqUu7e7mj?fZl5W-Cb9SM-z(=+}XcWO%|#E z^I^%7d6{|2pY4<^-mdGoqm?|noX#-^f+qRQ7Yp|N7k^fAPC@b_is8CutpX|ur)Pu& z&Sgk%W?wZ?b7EG=*QrKcMO;KVW*JdzlMT^D;ZPJ`ZgS%uLJOHjDdXZNx;$k}+^+4) z=3%i0Uu1sclnpLgik)}~73R_6C_kA%PwF2c`P)Kw9g3L40pE-+PSmHq?v?E!6Uu)sGjc`a6qGia)h!%^rZ5gy$j2EL^Q_QIhKP5W z15+{H==rP2-N*e^?Zu|Ep6eB_x|`24mkilW^c*QO70t=fjHo$xm<4quRw5@LITjgh z+h@IELmU?5v4NX|!OlwHx$L$P#N+oD5$0d29IWZn7ZiTsxxp60K%r^;a_rzQD{al% zpVV+K6X%LmISmrSFEX|x0Msbd&gOUmfdgqCUlP~yIV9^2=^ZlZXtYJEYJN|kM5ed! z$0p(f8d=Q_Ty4r@6ca;9V9gk;YC8U|;@?wEku&NZ!w$=~NwP_=MW^3<|K+nASC;qB ziz(=lRLb>NAG}5{n+9&J_cnGwA5mshp~tgMWLH0=S2US(t8z!xJ1&EOI@JRr@-)>1 zimtKP@4DeyvLn?FzH=eo(QbI}aFupZ@k_atUO3$~@E6;zB?C#=i4JkM&@#++Bw5m zzQomPxv$YM%$&Ztbp4Rr2gkgzNx1(fKjPZqeKO;>Ft> z{(hWTmzEt&mGoMNi7~Z*Iaaos^3|ZK_Sbz3`QEd3#AEtHP5Auwv7V~JG&%5 z(-|1r!L;8IOX`8EgfS-FUkZs>F~Z;|>$p-~y*8Q~Ib_QmgORVx+?zkr;P5b(sPB7f zsVQp2uA|Xb;gIkUAN+~Pa4PX3XN@)sPan0<9D^Orte zHm4hb>c_x?tmob=V(hDqSc4M{b&13r?EKTtj&n^7Q1EHvfsoQr_-WGtx3RD*aPOTK z`7}yNz&6+hE;wz}c$Edx=5Yh_@n2bEy_0SQ1|i=5*bUaXFvD=TG03rj*|}4|K5|Ka zv%HiReqPtjU#0%duIDy(zAm%9Js1|a9^6u`!ntR$ZGMa)nA^zn;ENBRgYT&9m}h~9O=I(Y3y(u+Eb%C+?R@1 zuH3G|W8%GG3|9{_0-wL$4408!HGFUm^#B=Pd=EYLDq~J@A+$}q2^(4Gzzmet3zybZ zd9Ys3z8#>U*LR3Ni?fDpl7D{zgYGQmkBIaD6S1XB`iX}I+|CMs=hGxS?j<#ng}G`4 zGDp(TO{6&aP#MXmi|VxKtE*J6u$A77|MsQbLqaUYDDsaV0ypQeE7Kyw}8mLWFS6hC> zj)E(o>&Hxgd*NSp!$WoE%it$Q;7EbfR&vsQ5zeV98W>!PJ63>%7GHp*UI>Nou!ssJ zU{i_xuzX@zc*wpR-y6CwQq8zi{=?R&xKR{n=y6MYLlj443u)>tKo7O3pxZ5h|4FQjUSWkYu zXqL%+kx1FLc-!%x{R$qFA8`Tumy=9l%>s|pV^0S4lue_i&wmK^mu4xmua5)DE;M9y z9tQqCC;6Z2J(uC51U%>O7AL45M3#nInRFQjY^YBXyTjV%g|4-;+c^Cm2f=##gG^%L zk9}_0+3j%qKa`(}WCENTEFy4SdOTm^6jJ*>p3ex6opl7X(>*>{JxkTEptKXLY@R+o zX-+V7I$U%dtUjp1W#>aMNmKDOaoTC|@o0Ow?dfzijp`=bwE8a!RgdZ8LgP*w&&^o? zK;UsJzEWjX44P&8m=JK`c-Nf$>{@R>^3zGw(%I3kiw!yDYC9MdN=m#lmla$e0lvbpAaNCW?1zz{UTvqv(UDTT-4>${fLU}|TWZMM$16Q9RvvgG1>3#In+C0 z_om0yS0_%-`Do=nmKSVb1aF$lA0Ff97`VsHGDYx)L+c4;UXDKHsFV5RlFag#srQ~OS49jHHe z#v7j5H8W9)xt4tDIJm2Pjm(3KR>d3*b>3(SMi#N zEOwUm$jT^+mei7~t$7b9>!<_4G|z>;c!FMHmIufu(Yen|)!t6^qo&9PquV5-bTw?% zM%|RSds)ZG$#Le+ZT`r=p^K5d5Z&E2~PCl+54sAyVa;vqS5h_RhZB zc9)o4LZ?<0JD&oMD;R-M7+|j*kr}^HSO;lQJgo9!OSmWK-oK|=p2?R6^#G$^v^xDZ zyQ#`3#q1%-V${r(7`NMPHT!0(!?rH~IC3Gk>iePtssmInX_+}3!kH)1-q2twQ5*>y zT44N9DQUw4$uj8syRROJh0HMK%`(-R^b3|dF?MKmL{wHBQl;S~=vU(V z-WuY^N0twHU1-ekoj&Zvv2th%5WGXkXk2wPu8*)pJ0a{)etT_0zEWUTuRMjC_XI&IiADY?-^@GgpQCv9PPEfMSkEwvxonb zGT7u9jSnkLBEG}zuI#J^n;iITR8gY zy37tx@xCB$pWmZH|Kce{JGcDnu{=p(kn_yg)bkfUYz}Q?h&p`4F4YHF6Zc&GUhHmN z017LZ2Qg7Rx6SA7Y+$;nP>%|9+yLR&7V0`9;2ifoJF4}XgE z1Y|K5I!}acAf*gtaU}#E(c5T=!noVg5n`J_KZ!T+P^11{MNDo7c1Yv-WXkLnB>0sa6tJ(E9lvNe=!~wQ&s{ z{ZTY6!!hc>p(7iz+BSsT36wJY+@-)K@Yry=6DoF3XlQ=5rnC<4s(j-(swc&}-Uc1#6qU zL~0`PhVN*RVDjGAGkkk^$?v8@F5b~Z{Pk)r%`5b6&L)4daImJF4Ph>lJ5Sv#aoiWC zD0bPq`g=bfq7y8&q>VKzU^!i)GCBXQyuR)>ec!#Vfu_74@9?oO6<47OzL^A zCL@im;z!{ReiCh_lxV^qSvra*{Rm!aE8r#5!$6we9J&8dTp>kqeI?^y*Gs!pM=^{3Sq$5DxO9(^gIg0=||JeB*%6 zT9ze;T_w`%qRc&Y(s>F>_p%n`BO7o<|JaP|fpN|7 zT+`-0ND0mR_qfe)Q!Rb>!?^-jd7Lh3>RQ9~jf6+Eq&B6%TZaCxnZh)eQdU=H^>IYW zfswl?B=tP-mtq>21HL+>L<;ddRSiS=#c9j^pnq4E2frI)!e#cju`rsWHLvq8&rhdc z%%A1_akd5WrLeGBF$zeEq<*SZzgJvmagKizi2g}_Wjq3l0v9g5c z?Li&jxoUr#OAz$>B^&^Y!uMp~ri8ZjC+0cg|8A|ro|TRv#j#FVbJS!#bQ|~A9OzgI zt{Xg;wg9{2Ry`8beBiVc)Ccg@E_t3-xvt;E+FYf(Og2#Bd_44O@!AEu-i+tk-j*FU zzM$i#aeaN4mG@h}S!<6a z_6S*7+BChs5EAWZrEU_Z^q5@IAbkl5X+|Z=)=eE@ryh8MN}Sb!1HGCr3#C3oF02p` zGKE~Iz|S+~T4|+&Mbd{U*-LA%R@B_^^T^pxPg~1o=n_v^-N}gdWLSOipQ`@4r;4Qg zAGLaL^1!sC22LLIgyvdfD$?~1=I+f~WQ0|HZPRw4A+(0yV+MOggL9!3Dt*u44O=KP z?{=>mcCtOwpuvZ-yRiMtrdsn?T&smw=iByS5I-c)L)9@ zy`h@~NL$qpAO{SSAjW72Q^Rd@Gh+B|18Dd;S;XaNRC4k=bS`Fj{;ro4NRR`}!_KUR z7bUTKIFqP?z!?ogGAT-EUoN3@lke%{c_dG{PR>7c4L|&8 zy338H0(}LHpajzzAAE3wSnUUa1@I4rf_DT=pqsX`Mm47YY>k7a+umYZMi@9f%XxV;?MYfW2zm?yt4ypvEd z-s{CZRP7qSUX}y+J{s!5X1zIe*s*JnWJdK@CG;!FzYN362tjSBd+gob{;`tlVyHyI z&8IgMn76Vq1}dHcZl|LpQ<#*(mqcp6uW*5wb8ks_C>Z&7SYluO5sr+AQmW8lD%*(E z^uR=z1Lj9rpjZ&|j%>Km@+#Dc@)I^O9v1rHd51WrFs*-5Hzyw_kiq%RWy#%izGA%J zeMLTXz_(if5}~U2d+B;PD!PA`D?M|eJL_-^XSPU@{mK>70fpFcl59lyhNbGfHP7$W zM_FQOc_tm+d-_SgOXhp^D#>n5KYr7<1; zEU=wX?9E}B-FLLpFpmPC_@))$$X?Eub?*qSunQ2}G#pd)&lCI5vB+4r(mCa*Xm?G0 zy`M|+H71G!AzYqPj%pPn33~QAH5692s3`w1;Q+L!t#c>xbN(D{u9yRZ;4MVM9c_4$ zJ?k$3VTH=Fla3J%5O}HfNQF;>qVMF%fqhxZW1{&=hob-nkiO5tk+;g>*rzmhAs^j( z->Yr%dn+;^s^qFIpw4-MyO=46Dyz9=TJclfuF#!*VEu`2n+ikNg&u)S-ETh|DG~hH z5fSgemWTs#3W7s&RUMOtdHasC&b{=d_q4nwRc>RyuXL){#RSDym`+3dE)p$7-PM8* zMf+mj&hWj&DX;vCFYsM=r;(iN@C>uim~Tu-Yy&<{+E66rXkIms9aSa^#moIJtrpAu z6b|-~sn#qE)1{y-2Bl-1j>ey)ic;a|lMxAneWIl*$n+*e7^EC`js=YLK5WWS&%-p- zyO!Hs%*?(-EklPbM5qY*jk?TfkHrc3a-k zpX2zaZKdl{Ghl+pMP(VYJtF;F2=~(^a4=gqF=B&tEEiAgT*%X*Y}S#wO`8(!R-{zs zaAb4lit69ol}Aw}#xuPi5R3Iy&=>Q2eH?Qat#99u*!U|6jY6{|pEQ|VqP(B!0@ z!WkpD@?MQ1jz#xVuLzL)guEK%<$sBrQWS@!d`Y1> z5ZldmZ!TIgeA%+{pZuCJGLo`^m) zUFJ{%LUe)5ASp)QS;^zBk=R)kxyHKTvUSQDa2l*)yXhSdC%g-bro~ta8LjoUD6@Qd zfIc+Oanc=Gn?OT`zrf_YKi^lSF|J)GAXfaA>1m$lyv2m4ge5n2+!#dHOSm-OK2j0# zV5Rw%7}?9b@+#Go0W$K>S&!Q&Ec(8CBBmnlQ=u(1s0G^Q?bf*QGUi6~$gs3dz@3O+ zoAOqF!k90LP9W2#FLZFiGQ4BeOK7V#vwwDEoup&xl2VOhPq6ZkO;#UN_GTcT=dZN> zC`g+bs6c1A(8!)7!62`a*h&n@H zV%tHRCNCGF*JozF#CYFgI$uW{0Al28*t!4syhjT*4;}9Vros zji1*Pk+BmWBTf7Yh`)T@?UIwM7Q2i!AkPKi+0&b3m%(3p03N@-)__UTo|42#z^G4y zT{iq0X1qM*3t_lU?fvkCfxcVd%vdj3dgSbQlbk$s+{CjBjP!PKf>6x;cw$t#A^-ir z{`<*k%iKSj3-b4LC()Eug~zu2G6;J8Tf2?x{IO~L|L-Dk(fZ`h2|K^T%980P|IZ4k z79T$=kaYCf*COUiA5}N~A^EQgvfBQ6n(Nxych|MjM6f4gA(PeQ?;iQdkxtiRH99Q7)RFfLc>t7BI^ zop+VcvR!l11$? zc|f7DgmKRFmq-v^J&mhf7tU7t*?7b0%i_+$enlp+&IL8$`;ioA<7lYMoI2HIps&y> z2@iOj{r5T|&Im=O6iGS`X76s30%p<_ics9z6^8AzwTR*@0Yh=@0r+%Lz(;L=C9pw% zr1kyF!XX>``2QzFS)-J6axNf25X*4s*T7*Xy`U`NV;2 zAf8422V(2Pu6&){ag&V}A;A*P4fTGv-ykxcN_~K_`TwpTXaw5L>BmY^AUJ{EUSJvYE4iO0l{h0rz95_lam?0~-t zmfE|P60ja)g%Mu}Vld;qfXrqq`cV6`ioyxN0Ok0X3Z}5dpKIu1r=d6t*{&nI*Or1l zXk(%uTs11t7sF9U>3EZK{4F>&61|i^>~or*Q#Z>3B?Y;3GQ#oO1zua1ad#H4AZP!5 zDrZ4)Vrykkse-*aR@5S|CE5SLC=w=vue?P|b*yjDhhN*81a0DpxdDc2b`xFdvxmaW zQA_b5KS{2W%)tjF%kl7wEZ%rqiQ3P=F&rtDlfuKl6-I81Q=M;Cd(}_n_fzrDBgXsJ zA{`$=r>~{2UMM=Z6Q6*6p2tejffPGi14XKz7vKEGIDCbTp;OzD9GhO{A3Jh7>%&is zZ92@5Vz`#OY=Rq<<3h%@L;`VzVw$u?Lfz$;3z}Z*_BquV^Ewf%RMeTx#o;P17JPWn zAN#!}TRXeGGM&6Z+JqA_H#a)bF=^e&zf{CE)iq$X2p1C7SdJ*AC#o%vEg-+1%aVdL z3DmNKRIRG_v_Wdq>m+d1II?^_>+xtUd>*n}sMmJn!-_NJKz*m?Hsav7rJSU*HPV>1_uz=v0W&@36FIY>0dv_J1>84tj?Hm(883;`d`> zSyW!o&-G8yDV@TPhp;T;tT!SaexmKi#Y40eT+yM6Y{N*6HY0*u74z5f>|pk3&UH1D zUGGt(hx^56NxmNAQjendO*vB{wckiB4w;w5MFrFAzu>Qt?xp>Zr|Lo33yfOv$vK7w zC3*k3;X0W2+I1pvP1wz`=?@xk{keT|KPfME^EChJurR9cr51(d<8)e?hBGy1J=m!k zoM&ctS&Fol^cxm;O0(K^$sy*q0y7(Nwk(BcJ8gB16<|H@jZK|C`Zu$C52{xvE&A_< zqrFw{ZGV0Q?U$S0|D`x5T(}6;TJcQse_Ekd&VEP;pBj67C@u%BF4eO8{d4%N)Ok}L zpj$~dy5fEho_7QGAv78!qru&cllgx!M7C13?Mfx&yq}$jaWCa)GNVYk45UMdS>2tulRRBo!25N~1NL+5Y z(AZBZH!E1R@D?yGb{7dy zF80Nk(xOs}M;v37RH6c7Y!qyKbiNCr#_KlF9MrIn5j4naegh83dpT8HMBg4h@LOB= z>eCph!}1PoMOTa99JKl#sl;xt3(bm0+w9~OU3I|W0W0e3$U#?RDQ0sUWE{g@SIN)Y zBvrBcf;C~WlQ4rb$_+!N z4FN9sMaA1j(Gw)&@J?5fiw~Q^=dGA*{ch_HnOynXX;$7nXD-;A3;e$`Yj@^cyPd|$ zE${Tq4KouD>K$6>vK)O+Q^i-Fl3%!mBorOs$Utt^20T%bE0O{v5!0>2O_V3(x_a{c z!lB{d&$M3q=_f{2JQV+MPR~Gtoeb%uh+AK95)_fl8%zM%mh5|3$2ehQNz0h8aUfPy zh0kIk((fL4H8X|bAjZnAyjfISva^Tu9`2rf86=ONAn})|&3#k#TeKJ8*+|jDbH?VT zpfDPKJe3MK8+a;{k0QN`$dEE8hm!}@qpdk!VOl^<0|ZaR0imwk%MF;YV<*c96kb z!UQ>GzK2#?WXp9rst|tU+Xy;+mlZrC;JmXEa>BFmB8uIqfGf`{Jpu^?#0|Y`-}27C zNL*L497euonzgY0`@?R5j@x7CTww7O`O5X6tzf4X)s)Vnc-^-0zW7tdtZwZ+IdFto zv$Yoo>4#1HJh}7;iyEMZ;YW|3Ichkr*FLA9LGmQR;(f;=y2{igE~Ahek$OM-UEdB40aJgczCI^3?QR0|`-I z__j#UVW|@_0HpGFt=a{i76lklpT_w%gVFm|AP=V3Z-t}LmcPb32wx0J@9AZKugFkMb z{nwss=UU@#nZ#jbw)dU>t3orv1S(u~9oNyTZP#dJZWr<+|J>$N`%4F$sywy_0D5+l z#J%MFH(SQWnmb>bqw3o~H~^G3MH5_Cx9}QWo{i9I{=(xZS1=FJh7AU!SAh_}l{?!7 zE`_qH^JE{0+;?p(E{K+l(e;FePNrs;om>yrxib-2SP3C8?r-2g8BLTDuiBN#nZ9gA zC0Q5`Ecwmw1@p|=;~t(26|c%X2S@e*`Rdas6q0{`Zzp=zVV2ynms@)uct7RDbj6xx zxo?Jg%w8G?P|NXWDg<4!WDC!d@Z8q<<Ll?gR0^YYA`-Hr*K{O>V`^W21bjS%|+he_Y}Sto`6H06Xls+>N}C;dAyg*tK`4TKN$*2^uD!-jTVM@1KRJpI|UM&&Bi{_&iNU>P=L%^7vQS;%jR0~! zpmCxGJ+xI)iMTsOdCw+Y{$fc>`qJ(Y_STtbbN z;H!CwQzqc^KSm56<+zgCkYS@jnbBO|Ckhb4zt3FdvV0_e_YSD<%!z1g?QDu~4Mchi z9P{h5`S=bJLnRKTVC^7TrG_0^5catjZHrb7BU5cnni&kGeZUJfx+{ zzZ6PdWnF}3Y&(pk0PBrlW>A%dzL>BE2f|gR4xhVGnT%Y&Ii%|vwhf^!0X6CCQf+JM z*?~hsUBN6;Ln3n3C19I7!BgKG8w&JSub!cbGLkx^aC=BVQd6y|#I}7dYhOeLVJwJF zbI^{=;4exGO(H8f8bcA52|$Dgw31kU_YfUu!5Ya3ZI%lsG zFA?@1&jE=is-T{Sg>&PB=U2Igy9olLp!4?aXX-WnjSZgu6AF4t#rQvSS(T=lT>OE; zniMzURL#3AsKv_MjNzV+kWf3so=vm3DU|j?%+~E-6yJ)QJ?2c*yh5=dwqXK8YSt{Y z^Zb;l?T3fpavW+HvqOE0e#8U6XhH**h0@hmt#qBAbhf_Jy4R1fFCzp+IH7X{x6C>a zQ9SwYzeK5s7wIDc7vjbZ@YN6yYLqjtA4u9bbWK@ek0K#Hi6ksavwt6$5d(RmA|rk@ zqdBN85m(1YU;qTV8NUgPX%h!=Jq3)bZ7l@(XlHPmXdlZh3-m*tk(T8N)dE+gVp?&& z(5bO&i`uWM@c$P?-~8dT%4t{=E~G|`UI^Xd@|Ef__USP*)$wb(A(6Y;+eboonhO<+ zP^I2%xx75wIs|z#f`G{!a}?esmrAaXRYAC}Ti!_u7O3SAhDt981RV=AhF`~AuMDTAs6vt_ZR7>`AT2B-0|b!X#(?4OoY#}b|caNkO7Sh0VO zp6jT{XPK6QfFOgt8>OVmU)ntMS{xty>b(C5*(}DPm0tmt+g#LzefKo#eP^x=@2%1m z!=sRhFvRlUdB;EXs?;0IB~dr$bfr>xCL{WiESerqQfF|JPG!9La!dX)>Y&0{r|MV{ zVNwv3dm|WJmpfO;fLDiM+)BTQRWq7d5P*(r|a zw-d_h%7_AJXI2mv0GN+VCcEZec~qc71zB%T(L7T;zb1dChLQK`CIi8M#!)NkQ+ZGy zKW?isqC=bfQ?&%FOAJhx=Rp~O6Y)#utT$V=z?aF~vMq&zgo(N7hH>tGV zWyRkfeL3rmBjYniEhrC0sZpSe-ZzymBrV*<;UKa|?_J`4uH$Iw{^_wmEu0;Kgkch2 zqlym%^M^7-U&^3gNWGiB-AdXOSMpT%v^cm!&+^izi!<|KFGIXRG-BXO-+*5RpO(^c;-8s3N7L6?rtyy{W@va5r`Ut zU)N5Y{e4?usrcT^(3hCYp*^}qSo8F@Q`6T9UTabeUKKk>VF>`8Eutmmw{RQixhpMR z{u;Q}M`c;X1!az+jE;e1*)H9hD#(B;JazZ*@My&N31G2DLPX&G<$PSj;+3^TO?xyk zz-&2u1W|eL`cyE#@NUoOTeurA(BX4H!@|mFN=Cv({HanD@uw$hkrU) zDfAt&!OT~i7HlkfGP^GBpY66?GrZ=BI7B#PuO*P)!=FMU(?G`h4>UVjhC?&I=DXIH zQ5i(I2k27~0j)Yqe2dOwFh_7g5AB%MJYw^^mo@Z{7dNU3c=svsdLk_OPa=J^{m^i&B(72^AV$ZVzQ`$=`b>xiqBV46@C{Ez z3^6KhFx4d~eovvyJx&y=*R?iW`zD!&{G{cdu^@m8Z%AxHy{BKqbu!?C7q5?1Dm>GD zOt!G%T3&}oI8Bz+X#{G9A|#qlxmlBpf6kLnM#YQVoG+5Y^qOLZKTC{D?xzF4@Dua) z@>LB7p}zij#{Esty(Q2bS3mVNe24H~tn(X2p-jG8q5UQIojod!_W61jGo4x{kS}QM zy%QI9{Rc_o+&KMk4RBkwf{DN+&o^g>UoE>|wI~_1JhD~Y^6=qmYa_$2%#vLEuf85M z(7BuU?;S;AlP0QG2`Gq^jk?PkeS||@6%m5>;2m&UVV{;>3Fj6#J8xguvlPDS-%@nJ z5bh*Oub-(&Az^q#V0|yvE81v*j>oM1NO>5Xsvq|m9#H> zHoDpBjkPFs9+WpEm)(Iec&e+;SgN|VM)g6Ahiq`Cc+Us8mL-S;A4&A3BR%jO9k#={}CWp@eyb5G(j81x{=S77ReJsD?P zYs_A5iO*86u2hOOq;>=y=(MZoe^kQT&gG;s&H+td-4yxIBt_$GF+BA0B^cSSSPs%x+PJ0SA^T% z1ZPPK(`&D>T@F{9RrDb-SohVtg-&6kkALVjY>Oe&sH=Q{ z&U|S?g&0EL*7|H2H2Vh=?I%IT_}6sv|b2XLBcMgF~G11oUTjn@Aig-#~Y4nPa%75G}a) zZ&-XrxUp=RnM)_DO|%=%^$r*0v|1-xu2Peq3%l7wUHVuuHE5W#6aTuUMTs8*wRKag7iz87Wqv|Hm_KpH)(uwLYtm;P+rABlbuGa-06Bi2pa9K|TFH!!w`Y zct(%)ftL*T!!*fSPq~~RHINkx9raTYjRcC^p>Xnp^Eyp3(a?{ugJ%PfZPVsaMV^&M-nl2QCQjMp+LHH) zR;0Hn-fy0E-@Ne@_agtW(U5Au_P@?;be*A%@3|IQZoiuZ~G&NEzDH7=-&YiFG4l(uBKn-kA^4Wj1I~A?8e5+6Mc4Y@%Aw zu5lq)PrRSz(I}2w_nUT)cFSsuMg0<;rU=XnKjsiPX?bjLJ-5(<&U(u+p0-;wDB~n> zCB%t6+>Uc%;m}N!lMOO456-#(cq+IoS#l7xY-M5ymVoff*_cawn5tkTJf!egt_`R8 zcwc{yNc6NU0|lcCS)+|(mR#N9Z}+SMEJ6|+_sr)$3XVbx*p0Rd7xJ`d=siQtlp3IWT`m|0QDmhAp3?eMnB0h>Z(j_U%hFe4xewl^(np>o|MLGOBp`OYQQxAh7A&Bsw02aV zVg?J&)L6e5#$eQZ+2$c+ zUU=y(&t_b&HgH6yD?DvQ8w*3T@bfs13nkRqTQKcE34IY3vW#5!cF)Y_&j(@aPKaQx zR35z)J(sLdnD04NY|rXBzig9i34I?kh(2!9*;qu>Wm#!}nM&wrc@M`A?ivO#cu)*Ei0Gs5i`UlR%ux{l zt$s4OTc-|i3pi%ZzJsJpT8TBc+Uh+dP%r)HxXfyf6#+7mHX6h@8ji5N{jcmi0bY^j z2b2CyEiBZbjwr>#D2~8S&-^;~If8f-9kC34Jw;#k57DSnjG^WuyvW?Tg2}U))my!1 z;AqV=OuUnaGR>x+E5@UL*;MiQW@)v-(KaUS6Z~)z`g9NnoxOJVy~vJ)Ys|A>)~UaluK& zHiQfjow^ryh<-kb=+!yi5)YRBEs_svvooXz2k-2yexRO&TTr4cDFcd!-JFfoIW60A z*?>qb?&)hbcjt%CtdCd5IED4Q)k>Xyr{Zd>SH|yIab`>(k39+kVCUJT_K4TO-l!)< zghgcd1fazI5QvM%M&(b4rjFW{A0n^TS5yqq4tuLTBN>FG`F<`Pxvz3Wv6S#(3F8X_ z;cTGNF47|3x+-=O7%Bd!+S?%2El&R(eS_wCuKZ5h8} z-jwU!L0p?-vZp47Nzd#?LcshE=qyh0Vn8cJ-(f(&^6;c+V?ge&H}Y{5iYb0;A09aQF=G zx6J*?aN}OyqqVxCZR#ggkBx7(PdEb;-}#`f+smYvB{@AKnSRsl*S={!a@lZ*K1&co z>R_$@+2dg0H6B1&J=KQV$mRc{>@DM}TGu_$B_T+6cbCAVW6~udjewMZlz>QgNOvRM z9g<3i24<7ci>uk?{&`a+`IPu!bj$K$9U^`{&jtD|8nFxF?G|i8Rr3F*W|Y6 zhtzk#wKe<;BbHLzn1Mhj+&EU%7+h5hO}5(pV}IP#Qo)^F5xYe%seVy#f$|5q4UBn- z&vEd7YQ=dr5kAKiGdwjg2NJ|u2V7Ejn+EHWB2~vU{HLy6f_%#jN`Q_@qf|)aUk{}J z_;YGx_mv?*YyXAdgKb5w|H`$^Rh4GprJjcx?$NhMSak0i+cs<8r>pc^I&ttzSF=qR zvyg(G(I=Y`?_wFNr1j2|sUN#@^)Laj$~RNacZna|ceJVgMrq4ROiJD|QiA@6(gyS& zw1tm_Hr+!-WBk}v#5;Er8eROQ>h-~yT(4TPn60O6h1!!&f-o&zU0CUSRFi)mdkDM= zwx8nxP1^IqfC}!y!WvWsWt8gkQjci(hmboCa8i zySbdT4e_#@UmRQFkLzu1b^$%GN{F7MP1Vyz>xKanWb?Ik>c?d*mzA(rlSWlV=~d#p zdX^>2^v+9foCv>beaJbSaSw98?O{=jMB0SXV;$R64}V1TlI5_s$#(_fjj&6hh3ydF zTPq0u_5!g!{#pP_<1{SJ_~x2MJY8}`N+>kXF#r=}$`8U^Wvo%B${P2fu;2(_4ftZu z?JtZVA=4S=NkV<34DGg$->XEIphQn7xbq+0A|NeH=1D-G$5fGzXeM!s;9mdT>}j!i z>G%v_*iPcgaq84W9P^WOo_ORUe7#aL8y)rDMJuaoe}xzMb_x>3=;BYV>P(u$f(R0Lb z^rgxxp^nGdgWVm}z#{Qm)37kWuXh4#Ucxxee|9%<*F53fOmHvnF^f!Jhye)Jny!6u zAAfzXle6-B@)|-C0yg`q)idLX7(Jag1-N?`XS}G1tcQn{uBV$1YR!)wT+EO`SJM z64*#508;cHU+3V-6 z)mK`d-e@3DDQ$Lm{f-a;6d5rcCF$!{o+edrq6z7s1Q;HLZvF`a4h)MVy5f#M_PNm$B{85h3DC)1)lb#w+=wH{y! zN=x*iC5+b_rUKtHdL+{q;{{?|aA=oh;&h>O`@;1YX+kd(jv@v$ri2K-)L)B{4*s65z6S<#9=!^-?k(Ak-MRDSFz_!v4A!%A z*BnfXwfFciBp_Wp!p!!eddE1&xdu-FOARO_D)vswYA-1ufeGn4Bsd~)*e79Fg7 zB9M@tQ-csQ1?YBnyC-DV{tH*9&aFJ`%uM~di+ua>k_5KxqjZm9;ZxcvP9oqe{86_A zyteSHw0Sy$ntBSf)vw7ARCu_4zN+)SQvC%3BWNA|d7|55h6)_*%Slk!Z9AvNH6|Vf zl?*%F^mdg1LvZ!_*S+;uNkc-4&)8g>H>h2bus+bZWgi02t;2#W{pEDHwi`=EB;h~W zKwRBH+0tTu)6JeZW*UvBUw8|jU~F!f-SoQF1~+Ly!h)lY|4FEw0G8>p_C*g1>(kLi zOC|kTxk_v;FFv^Vhb@ZXfo%~d77szdw{P#jF%?SprnVx0j_Jg5kvH0GX`wteF0l)P?;hBeGOAF7pf=tiCKWz3}3LnooY_Mg-ydiN`^Ol#>e9W|*c)Whpj?;J8 zeK~dGU4P@aL+@>6a&wV=ly~Gc?3_Px$QSK(k?AQQ1l?}`Ad<5V$crfetv|qgiW0tX za63o^t_ep^1{qJf{P8CmmByZ~&DxFT8}S3{wp;2aiUFPHBOv6qW%K;l`0)5E{b$SR z}u)5XL z+J>`rai@AGt)w28!5t@jqDWXvZp;lKypGUD>`bxtUSHi2N5%fQT;I4Qgf|xn>L6{A zkCJ|&kI@2dV0LY0J-i%DDJ0woC*;Lb1A9Kn?S&tzPA3Ar&$beZ8m^bTyx%@%xQ_$I zAYbP$4QiVy|HFxLwez}ebkvzv1KV{yI?M(=+@+@5jssvzv2E=K_&i z8=J3iKaadm$MktN>sQ^?uYr4(6CI@}*lr;m(+ zn+2Y?kOMce3G>uS>MmZZ54nTWPA{Jmc@5HVV*av6%P{}QoXpdcU&e-qr!?^I^22Go zDAvX8sr-<*K8X2%*I(H+Aw^i*=6YJ&GYJP0`@}ushe~bbwbJUDK$%kUX%3eOwH$?D zVom8#m}r^!*=Ys2OAZ#>=Qi&v2znv88(;=;W21ixYjM=6G&G-jY9oAESL6ElK=0<= z-EAX6dp}!9_S*fzs}%b2-cRtd0Ak8w6mHnxLXp;y>AhLy0F})k=})rF2Fj8?;DYJ< zRD~e7%mlWuOSlr7zRjX6_NPYbv@bl@j!0(P#=%p}9MY>>`oh|}ANugtX2$E#us{3` zPjQG3bOBQ0j!XANlc*3MN3K;kq8Add8b~nud5*b7@Kcs0k%EoX{%*jnO3Wu?T9x9x zo5Cl0`V}`tK(M1Gjvfk{=n2f+Pbe-#y9jKwbZG_T-EYnk-9WOJA{@?-l`hwPOL1Q7 zL5gYVgP{&rfSjEGSdcek&Y9mfn{y@Fe2!`_V&Im%rx30-Wz-Rtbxlj85J&6USVi99 z=~=T);rbj1NH6O0m#YEF#nF%LeSQvOP16^37ezICWu?DhW|(G+=~D47H!kuW6q~&k z(8k`N`p#K`HnXi>%8q1PLfj*3>v#CqTB=B*BDnN4Z|$tSBecQ)3^Wqed{gKGY8)_^ zJgGWv?8sp%=cGQlwI|K>fWZ89Jywx+ORlY{V7p8LB?Fx8A*sECY6_NzE;_inZ5P$h ziOdZq{AOGex&YkiUTH_*g0qwSkaKJNR2>C9rVc&68;AW*w`9qmgh+?m{`dOH`r zUAk{;P0qMoI4T(~l`vx7;&4^dtmnxn1Xi|z8T~h^zKL(h!C#k7?~HFOfrH!E@B{^W zBb78;Wr$aI$zvDB3cCbdQVC-h&i@Z1!Q9tH#^#70bi9JgtSU~Mscc9k#FHYn{Pu8q z6!5?4e1iT61QI_SYmu9%%`o>74{-O@Q&Go-=h$`Sc@VRe4~WX?4K?C^R;F9pk@UVX z9GFR5a>j04s_Qjcd{W={MfEN9P>=eTxjJ)KG9P|dY#ZLWOa*y2L!=_Tv_ zBOiI319P=F@DN!zBlC7}@nKHoN~;7Ru`Re#NSfK<^!x(TA;RD!csf*qgnGNJg0?c=IY9 zVAki}AX|m4coY#!ntzfxCdvP-hYwTqQbh7aRt--mc}_{xpcOs|xlEnU(_2NaR@k*;(5pdlND|8-+9if3B3@(6<0frq z$=XMX4^;6S#W=Uu18(7;`%lse!B3_F>bJ|*BIkuW{%e`MTe_xeLG*1W2XeabwYF^j zNXuRnZMCt>x=@U?ie{;1;T?mvqqGMy<3T=b;!fICUXja;xyJw6M6@dWI1Z)Srb%Z(R`oh@zrkt8rhYUH*@dkPC{Tk<9Nh%d}{VY=}L$-nOiKNUPo*1M7AddYy4bq`ZuT@yH&4< zzEa3-@cLx}xmrJcU>|!AI2AB5+40O@6^oUzcp?0a%ZKY5wG3`-8bh=1>XAbL0somC z@SZ@X-(I~}mJ-Q~mKs&=ZAp}iCO;3V4U}LML9H<%KM!t>6u*ZDNnsdNezn~IzD``o z9A*PP-33zAB+tCmZT<(yBw~=?4A2u{wATrv>QaTX`p<|5cjKceo28U1aff;hBN5Z$s1hSOz9^yF7MR zYl)2`IY6t$OqA+;>XZ!Gl&n=JzM3z3e9()Gq7njkm@D}pQy~?Oqk_fRq)+82;Y+Tc z=hjhVYA!M3+ony@84iSza$r$zlHMp2|A5-NBDPAlsB8M7wohn~Xo?;~wx>B4Crh@b z^^U%hQQ53X^dOP%y>}}QDoFBaUyHi*5Zv=Qpt7+dywy5H+JY`%eX6u|S&c)#j?rXg z*c!a#r#@}?7qIphMdcsGxtcnyx`nE6FypO8fAkB^dD?1#*c2Q}f5 zs?*6oI4j$5pvHh3t_Im`-jm%G*8K7lx1d885Qk{l-c;@MmIHF;P)GNh)IfQBXXlw_ zS9@;@jvwai*tx);EF()52lEOu2G2YaGU zN-Tf|ipRhK*|eX8`>rh95jn13PYNmB9jNi(48x4Y*Z(NnGU-jSHIDqn|4Ja1EVW8d zr;X3p3g$H_ZhXXF;w4$XE55Ei3mAztLvr8)4(dJ;qTaIBD;f^EC|675zb`sy8a=l zidaQtH{!X{UD7Pe5+?!)1v@ca5?&_$Sev9|8MHH5uQ?z#mX3OoxHz-}LVV8186LtK zFhSw$MN{SIi`67+a;4Gj5CPeB&K>Ndc*9!|>!-Asr6k+;S~Ukzf7+FulU~}M`z{|U zR-hj4T=Tf8?XLQdVoRVzS+YL*J$(7dV3Sp7u8NuoT>q=6#AoSQl^5NK4H1!qiV14y z0yS*M&Qq+0JfhPr+#}N#gr((rG6`P2KC)MCZ1v_8Rt$U;U_#uz+7W5Sf=R#Z;tR|7Yd0ct;l=WA0oIx73ORc-%m;PIuz@U|g{ zkrS%J$35`5D#}$(bc0~QWyrOn$jxS(RKvuda6gF@4aZ751h`0I%J_S1e}${vA#n4D zyVag{B2rE(1bX|ns6XK$U0~|7#pOB04%7^QAv7JhNCKeV!Ex~x<3KxperZl(Bf?)O zxC>fQ&02{)hY#PCL|%+GoBDLYs;1}HRdRg?`-h-tf87Qo#O1M(tgBh}N7W47A+4|y zHZbDXN6h+chp8jCY%K_espgyVzieWb4Dar{muS5Cm9{o3^*Su}qo*3=e3u;We(lX& z+hRU$MkITs?1Ewh=3#6N^jdsP?%|u?^0WO!=fj()6MJYx*F&g}Jd~O8nwK?7(CJ$04emRP6E5-fvwiS)0Sjzx z&xK-!-hoi#qRP?v&QZaiI|npu+>z_99YKOQi*LYnT<@i}`cjekqTJu7LVpN;om3lu z+&#GjWDuH`PIeT}{Dm{#LO}6YAvm30w9^M##=)Tepi$1x_NK#x z7+B9%NY}**#?(fg6ghzy8|iEH8KaKzB2MBM9_a@&l(UFG8|Wb2J%4o2-MX|o>s|MJ zAa*sroKfr`tBP>$^hDt(;~UONo*%esbwO~0fYEPPZ$G#_=HF4YKD}~0@n1F|@#NgJ zPvJmY@t8PKD7eEyj}RxGxz?V{#Ah!)5*B#l+GJc)#*%T?V+OUnQ_TK=s83#p{wKQD z&tO8&f!qj7-?gT1$?E7KjxRHG&WR4QWhFNW4iita%U^2-S(k!3xBeM6#Rkm_C%_5c zocKKgP6X-aTztXA7~oTymzLZ|(lF zeQZW(zm3sknx3$A%N#v>NQL^v0yg+ur};Z|1S`a(0~*+fg|vJX#VEU}N)Xm4Wfzn9iHcSj2lL3KI(Ub1lFoxm~N_NTiyhGRsK5P{US!FSb%*N+LC!)Z5 z9wokcsu9-wF|3l2d_V)ZOuJPcR9>%&;_F;P7$%=BZpU~C0n}5lN~cWauuzo&54BsY z-;e2=Qc4;W*;VbeITkH~kSe&e@wPh&l( zLv-c;=m%AWA_i%ZK{;mL>)73;@|xaQlt9)eXTOx6hq6*gG9AreE+kyBSX&o}1?ct8 ztL0dxqWx!l*V_|_g{#>}ev*LMZ6DOW9+ zRjXkDYRbIpn9dj5s!RTXsX?4fCM z+TS{7M{dFf)WQ4qcGafgg(pP5Z7CqW9qVC;m{afDl<{t_wfwZ3l;&9k+52AM!MY(X ztKB&V$C=s`R;#BNi0@*q5Re$?^Hf!(mWlt~+A&5&ls<>~y}Ph-VMm5CxlYL~!>q=f zsTF|2HeF=!lkS_kfSrXHkXEm?qXsDGzhXDJA{HJD5$#bkzDqI&6Q~>ee`<9ZK+oWM9lM)DAT1Q6jl` zMIJCAVU~ukRlRmISeJ+SMLwUKo{L4LbX$9A&|kq^8)AyF>lKFS<;NuAC%Ra|$(7I^ zu==#_r4rr3&8uJP?crj!PLT}o3RjR9p#CN#vOjxA-vO*j_uu@|;g{ z-9*jN;5#{nDr3;iONfA=iN?IFuW^xg{Dl;OhD<}$bd-HH;^Akoor>nXY~xb-JA=vL z4~^&qcx&S#VsUHjohEB=J={rSJ-Az?_ld3G?dDFnOK02guy9-goGg>m-I|k zc_tWwT}L?469YhVslv^?q%LloexNus5^yXUIAI)nB=2lpLBQqeRmyc@q;|}Bq3}BN zV-M_nSGO7eJQ7o*de;VFHO>_;5UMe4ERB4Do^1y5AIbkw>u5(%SiQKZ*Jv>jI9DBc zC0!_9tVp?nN{PFI_AGkM0WFd!_!FX2aD~IiPiUlY@hbiTU41Sj>C9t{aPj2vhq;WI zE>R`qeV-*qy00C!Ut!>pD9Oas*8P(CCUPyfOoW(q(vTn%_iMFAFy&Y4$@TbHuR`x&~OTT3`zC%P;Q#@PZ?~C@qf*6LGv=#x03{zW@tyOb*9p zQkpmp*E^Kh*7~I;T!?ZBLUhaYK}>a@t`jPZoCfJ_2iT?Uy@>MsZ4y`QuU2)Gy~zEf z!3-%gwM#BaDvTTcPqVn<-9}61Al{B4T~E@6k97_qw+n`{tfs1oXYsMkB0C z3!8XgCEL>BBT{1#Z8U_K(XC62r2c?aJty&>;~Q*YBp1+d@bsVesQx9eD~`|oO9oC! zQ7_Rw7zMiEv)y-pyyy}bn{MegY&a{mKOmHOm#u*ZYAEKddmU>%X{? zg(nMF+5-!Xzx`;Y%@t@Ku+GTOzp0s_Xk6)LKp#gWiyn&ug*uKI$DGpgFriXyQi^X* zPp6^iz2j1Bt_{qui*f&nW=BpE#9LG@JL4PR!^?QR;`w$fTX1O$$NJ>Ui5uir$Tx^F zTOtR4_dgT`1u8rx{E&b2aT+|MY%)tV|AKs@cgt%7_@7H$OaM!oC$xdlMn&`$94Z9i z^#_`xSN>8LH7sK>$3!mDXfQC=hYhYk*ZWP56)|E23GxE|H0z6Y+T*;4#X{r;bfXkj zoN|e>$??(KYhij{mhDHDj><+?Nffd zDm4hDXd+mhGGiL9=1^kiVe2%_rC^tA$#H`?b7QRky$WqMk1wPc_+|3Hs9-%Nn{vj3 zF2(>4j8Nu(!cvIdi2l~Tzw)w^4-iOUM0S=#LbFnkC$AN5x&%#Tyuw>Z%+`6s1}aVG z>s&qz;;={HVg|OvyD7;_M=Xj(uBFXjGi~?L;-N_>Y=54#B@kEiv~vw&%N~J5MmqE5=#HpJ#*LL} zyCA*ZJ(?KS4Un(rJ9DdMbXU8L`So^__R%SUPOQ-OinkgBZ`sL^DI7@^9N;9 z60qlMUCSH?-@fu#-X{F=F zK2c{`NbLRKN(*)Kw^hXV-g6URIpl(m(hn}uvX+Bx8R(vE}M=%*&4$Nu?I}!I84+oB4 zS0yUeypO)L8+imM3^|8Vs8q&DdN!j_LeV|>0ARL zjc(!ny5FA7N%s%9c%{{Lue~>WHI{)$bQ3;0COnI<%5Ik_x=4a8^*Q$5DEag|YLv<^ z&3Vt@+8a#|avIFc)H`{IXyR?95JwM681d1s1XkTP&{utX#ktzG_76fzyhjUhXygLw zFAW^;e?BCej{oT|LckPy35$9%&VFZjeAT&B1{V|%TBF|l8`zP3Zz{F=D|$wHBUK;r z7qDXr$~uYQrIV05p~^3l!Nf!_6>FB~$8(>2?weZ-#W z#h;NeuLmtFHyX?i1k-Uw*U6{9!W=u_7-FtyAn|{3C^Zt|f@NsHsx_mSvLT)5hGG&7 z6(`JDh~wk=GHtGg7#8CfAquxaFdL`pD$^zO#7#4KP(|pFE{cQ0i&7^eB*LAI527kSnxPREPQe-=y#A0R2w3>_P`GI^1 zD*{olOn0^h>C?}ORMeamywX+SGkz@1+tio8H4T;q&>0~yV}R(P@nl`AyW7uj;n!2M z-}_V#-{ZPyInp8_S({&IltZ{_^f#v^)Zs4%sLSZ}NzU(9lLVe|`c`J!!#Ta4mgb6a z*2XSuz47P2EOQ@RadY-^konFc#y_X*j~T+%;WW-d-#BSJxgzFjC<58sATZL--QN(W zFwt|8x$v(}^Ls5m3jd;sWaQc>xWt2Ej_R-?qWqF_ch|s8cor|C?Q8)va_U6yu=4_N zX&>~^`m(w+Yt~Bh6qs^r8HPN)anqB;!38a5kVna;3dh%w%utcTWV*J^^!E_}EE|6^ zLHBwmsKoDx;1Td$Siuj+t+Vw!a0rFfAAu9+wFwS7%`B$m&t3{&hE-|J;FmK2jcYjv zYZ=-$IW!Ef!j*-mq90q$$0b=^zA)&a+vcFo%hsfAt41-t$fs>2!556F|5(hTh97z% zd9CWjIPEYg*~Aqbfunawtyj|h-tcCuy+1mV@RrVaT^aAsqh!g$M-t2 zzj5!$6twZQzuC`3^X7Ygl=qroqfvK>KrJxPi#2%k*c>XLg@~oO#p&_*7i4n()bnIw zZ!$VFo%u5^Me(o#Fug*Bp>mSoflK8;${_$Ds!#;GuBVIS(aCkd82JY__kiut*@7=) z+_!+CR2+~#P1+vzJ&-`*jxMT!W-Pub+C{+1feJx4r=C+*nDV^j^esmIjpkyN`sKnx zX?Z8-s5V{7(;$KYt1m}6>to^sEv3-5ZbPgJF|0=6^^@obP^XFh>JGradG+M@AnUvc z-8@6!Z7G&}a`JyzJlO*5g%kl7qLMZqu-7&IusN=D1M4(z515$y(B4J`Ox=hgn9kO9 zo@2;~5}X+T@dbF-MW?Kp=+IS`kQluf{I}m+QF0?-kWsT#i=s(fBcFL=a-I?t1=Eh5 zzP{l47-yDpSbUgnD-=Q+%1L0&)9F3$uQe~r`4y#!EZ6=@o~+?V2t^5$0W*J?XGJRN zKD6_cv2^AcTyFq-ucsvRCNV>)HUNCO_2vOH0wZa}bB64t0if9anKZXtm!H&)wU<3m z=Z6zM**6h-)RfT%j zn{3DXDGWETrfgZ;jRso@5RT#>iAz#?$FIL9z^1Qr-Li!*oX&c)V`pOyPVD0M-Rtq} z*O@nft{y2uNNS9RLE_gBS0f7vtga(9BBQU5!cAfqkr@~9yFBx*A_2ls3DTWHH*b)f z=P#7uP9Hgb+?X`JGx_4LSdm-4fu6wJkk=!Ws?TcwYTa^`eR_%&G0H$m4(-ynjkp#k zTM&t0{eiafwII6)5eZ2`xtlpno6R-8E2+Q{2H7aYU%ULX&<2s~E0~L&^q(P&3)rr< zDA(H$@V9m=3=pSr1?Jo$2w;#Wj&N=@9#&$^HKwX}ovQ|ai`yc||Ak||`xK0z)5%@M z?6)A3r~cSc&?{|gb8Wvza-j)nKHR8T%s*{FpQq+D*nYp>MA+7V#Wtlc`ik}>b&{ub zdAHs8s6u*cshN@Ru;boZG57Gb5KS}32JSPK;Z+(peBa)V)zv4% z@|Q?6eapsO+=R`2&t9pA!CA+V;;q@C+BVVSNRSu1-qn{x4Vb;hySuoZ1>}dyIW+5| z{o1Abm@{8|lDJ6EKKqH{!se|0HD?<)cD<7UZ|(Gv$39Zt#}l*cHX-Yl37s=m{yIvZsWBk6@74iL?Nx@gO-zx;we{XLz_dWI*tyW_&# zg7EL9<4mxq!Oex-56M?j;qT9aBsE&&!bjf;ZMNGwR3G0@I!)ou$UqRptrrO~PJ>;i z_2?Igfp&A(MiLPF=9<;a&;_5vSmmodGLQgT>-ygnpd2ZJFO;)#i&0`CnzxeJxhFkyy#N1p;%80(ZJ6O86bK6^T*KRzyBvbg)RqLWw-%#+nYpW0l0^qn` zAr}Fsq8sIv&-ZAXHPZ+^UPIKUA0qaIGoR8wGS55KGiHas%TuI1ETfYckmllKVjsP= z-fFFX%)C2E00ISgpd0!?g5KT2hZs<{I9%ll9$}O7C0xRvySiqVs8JqPLR3 z{lcSwyB=~Opw96fqkWCtHB1%w23wsEOf#628^15knEY{cCS;LL{#iuL_A|VybgnpY zfHxYOtZNlDSkx!u*mX`I0Bfke%1rk2#%nXZbU%z*;#I@6h2k&An0IZ71N>o(w^g#xh*@hkb^9n{aKCzX_KTLKoCNC+i8(3=+U{y$jrNMB?&UpQ=_r zR>(K(ekTaH590$vHNx&Rnhd}YM@e9R3-wwPRJ#A{U&tWNl>Wt$D}X7KiUpG1yxV;* zG=lf>GxXC4z3?L7Lyy3uU&uu7z(Y|@#5sh*k|BIL=v>m~Iyi(VF+@G$Ivn~ie$_GR zK2vpSQ`*K4X3HqHjV;5Dbl3Mj>d@{Ll%Q!fxz(IVXmgQvGr{A4ct?Ru)pgwt2{qn2Z!%hR&P|w38^87b+3(OdTMFdGu`SJrOaRn3 zgzA9WH~`_5=7C)FqQKJS4ho6VI&9iXz@I23YoYO>AB`;dsh@Oy_8|B`F7@`yY2T9F zZh5D_6Ml>PLD~WBv-*(VmGavplfEDQ)KqJF-Y2hcbJZkfWXT_*w%*(x-K}{h6ctmh z-}tIp^{3x4@K_D2>D-}o`?5+(6f{>;)|a6KgY4v?JByByFE95TyRa3+EH*@8D{a3h(7nyW&Jb}o5U<%q&VXNS@CD;!e&0#&c7AqrHKt~|guQ;5CK8wI z_5acZIEJ&`(f$|U`{qx;*BAhNM|8kIo(KAb7N+40vQX~pmO9M9dXmR#d|}J+_{M`C z7MX&+HOdxFr8vVN>P|w-y?|>(m1UDj*xB7^| z=y-||gd%bmlt3;=A8vf$%e2k#xdI9=thn$O^m1KhQ{hc8Re`6gpnZBJV+CHh3x)z# zlo~Q>qlN*6AC`*Y<7?@4@zTwQ(#dsh>#KC z?r5jr`OV0EpUJk*Q=jEe37QX@ zCn*U9np`07OX^0AhDa!MnK#MtAgq3u<3XJvJ4mdIU^jLBuk2HQ*Nyw4;HxJ_`4pch zO7CwkxeR<4vvfeWcK=l-`?JqGjG$&|bGYAL3lja|F3?k;B!+_J_XZMh6b_upyI|me3`*73# zuM#jXAeu%)gF@@C-VFt4&5IdJLp*jtENYRIbG`zVyw%o@JVAC*2rTomEL%KZ1)Mj% zppp3Vh{l8ekku5CEd0Ac658A@YD{HwHbL=u#M9K~oY(hCtTVf~T}<@!_o2plMpJ#1 zt-ttms1cz71ReO#qGTF0u8Mu83_lCO{PUt<(r#9=9x7|&I*)v|_Tz&!k? zK}uNjl+USLj=YC{26;>!YI&yd?+;@Ge3+2zF+7Ltp-n_9-EY=V-ItC$^U_b86Pe!= zhuNH+YXm?a9pyFq2VfD?`5;IXoYy@5(=P4nSM;~2m#DWjVCQAfwTAZaZ zy$H0X_#|mtjU0^bV!vUloLd?8S`cU|+`1E4&FtyxqgF*tk4Pn6HRp**E(RZDfpQI7 z&y!{hsYa&g?4oXBhbWbHrRK@#dXo`?KJUfJ=XnsX#QU${K~@3=9?_Ez6f8 zOD)8GTq8?aKB+&(xTlUSEW?+Rdt5OCFYUecB=P<6hBb4g?pAGd)kCPQXV8dhKH+KATmch532A-JsPez?`&s9%PByw+CXBg^*Uu10X zuAsv=4pr$|ioXCF(@(g<}X-jH*c>i(Vs#B!_8lwTC3zHEexz@t+%#}1hO794!~3!M%5iuxxKIqHHDHM7Tmq_CPdM<^ z?97$Bu7Z3h`i0h4ZAf)_(Z*<3o=xY+ya(oEhqk$pv{Me(dyy}e&{${WO`i-^G!SAzTthkr&J0Jy!sI)i21q+KTnfdUqIiCaQTYVVHOq zd%^MyOiTWY+?zkj4daq13ie`;a8fpR^7~MLXSiW_y>teG_gc-yC1ou@u-U*=Y6KEK zn5s~pA~u)?gF&6|yLTW3)J?Tz3d}zbc5FC+iS&1ufPZj3+wONyTzUDYVr={eB!SQv zo?J692V`HiETKRGxRxi$nl;QJFTlEfhgHkb+Km5{s*Hv%1w2D%|1}}^xUM%jD-*H zBA*U37qKQ7L0tHR{4So3q!o;A*|g%EB!*paKnJ@jv$gu2kiI3nOP1zjfh7PN^YyA3 zsl&y#@G-$x>L}OHcT8I~cZ>F8ghL1wzhYl^T`Zi2L;=1l%b!E1i>{#KF;LqNnWW0wfT_LbMQP~c4vDD1ys z7KJCHRa)2j^&|-}T-IXtO!{R7v1<`&_bZ=+0~Gj)69-FZ)#ohP&l@C>ozb#5@T;zsO3F#vHc&SWuh5BSK&+k; z()DMV3(Xel!FRF>Xjt4yqS&(*#93XYjUHbHhFK(0RmeRXjoT2z@`D+W+m8*@*IJ9CBg&Y#<1$fLT z>Vt_#f++@tDgE@1B)csIu118XPaW(hMb#1G0YOKD`P?k#o0s+KI zn68l-`A!aWY&HC82e?rev=(y5BKrKvT-BU)3nJSxG|mWR%$?Y|tUBzqe4L=~Tw?U_ zTdImCcScr50IH{4jhsIz`3+MJs*p99c;S2>$c8sVKg;{eKF(Px-Fhv})}6JT{gml1!g<^KXr)8hJ*j1N>B9O}oJ6JDMm0ywEeB#m2 zKjxS+@E_x`#nZHJ*8l9$0O27i?NoquN#V`sVPJEKgAAjt9&`oD5XUPGa{`w10H0C~ zpJ0VjP%Knp;c6J-na4_68V2u(Zj~zVk+47TmnG4mCW3AI?rIgW@$)B|M+%d;#>twqfsLe!M$TZ_HpX zVs1!CAsL89xgKIq?oBF0$t`Tplg5aMARza56xEgbrfx%pi#xpGHxssUk~4dUW1Rb9 zV=3P-w+CaZsADY9*b#`r&Qc@G?fuN2<+CbEn^K)0pNkd~3`Wdxel{>yK8*bpV$H8} z*jfR_p$A#{ck$E%G*r`08{o!=?n*6{Dhf2KJa_6}rGE`}-MPbZSZ3l8fG8Ve3wKzs> zU5XDq_iyQC_b2(q_W%^q*BZ%1cbEUo!`()G{bPob2e{>|tD*DcnjQK%ym@zjTD|6o z7|3lfl7sc@k)in_&s5~#Q3M`mRMjNJQ*X3r?gGR4!p<{hs@Hy3L_kgFC@Di`s*RTw z5IDx8UqlPBjyH4@8fjY2c^CsM3E@&j{nDxCgwhAp3JxyVM9Fv!*#Sn3Y)j$;E+{M`|~OnzU)D4J(Oon9E$GC`Kz+OU`?t~<2nGnE& zZ%qf7NXgU#BS5(U&q1gb`G^s-^=zSl4VhlnPJQgx-UBI8*ELu5r*(5h@r6=Lb(s51 zC!KiGCPhF|4#prnJH_uHq}Nmy1+H92uMOz60`67*DzjCpzrw87{ibOl?=BlBo9uQE zYnV?wn)w|^7L;g465Tf*v%;1Kc>ON@ic+`Y=J&52C(j;XfzJm7{=GYK2%&g*+7&qQ znQ|Q$5!D4g%h}^dX?>)2GyWbzOymS?*)A)Lkq{R+C7<8PhKn%&N;a${=}GDX)N1io zQj3IY2;$P3a{_U@l`R~m7TYfp*-GF9XW>GuRg@3pNGRjtkgLW_RYZ1OJH2xoTMrrC zzOPz`-gjhBMsH%I@*f2owcxN8_r2l%Wk%eO-_&B$N*lJ>h(-cmAVLig0Z(#=c#YbH5{*d<|-3VL7!9 z4!t$i2mvuJkO7T(K0|LCWxOV&QWxr&7AwOtJrp1b?Ia6jtu5IRo(IBOZOW`Zo?YNL z^6&&Tn#@-r=7HHR@gA2%r@#0F+;4eSwd_1X&ihYHpXeSI#ml_D5IdYjM*Dolux^Ub zNB{gHY>|j$r{B#4B&ISKEc0N35V<Vh*W|1mgtF{qv|#s6==q zg(1(NNDgQj&(OXa4m$WAM86EJ&Fy<*u8MKN?V1$htVjK}Mm|nP(=MtSt5&mz1uef? z={iq0QSt{J9~m*VPFJ<^ui%53bb@(o6*hdeDq|QyY8|P?GMV?8P`7BPiFe#raa|e% z$uJo;kvT=4iLV~A&<1U>Ap?_nuRmEW5J3vdtJTRmfrKW9j%KGb@g@m!TOufXq zr1H9Zl=84M!5DfK_DP(H;~!l%-@C-WU_RflKtc>=nRaCFx{+=E$VlES_1QDH`r204 zZ!2qpqM~%0Z-WxL2Ri^VknY@e%W{TkWE;*`lOdg02s$i2XmDs-K-O<)j0`pjJ%)T)KLM$-Qst8oVrt)> zXNwl6#qR5)1OqKSKQ8){+8F>EB8MqJK~bU`$Dp|bar{4wePviwTl=@t%?u3E-61f5 ztM>w2&Ae1MOz)?Rzx z>yBTL2-qQ5(|O{;Tia$w5bJ5xs25^xc`n(C(wL-*nFtqND}7N2HJo|v{eF9o!n;#u4LgU7XS_UGKErJk$j>!b96-9*O(%-3T5sBgDy&tH z1^B$7Hm!Ae`I>IQfJ(EVIi}I9`22-#~9jQYodM#|BTIdXREJA;8BB1MJ4mbl%!CTRA&Ti)Xl&C1Y61Mbl+PU27F{#Z~)p4+!xM;Vh zhD%^@=6g_+$}p>BQ}Pt|@FS<5gWFG7w-pyFCza>&HTK@K39WvJSM|mU40oX#C-nSV zI8;;0N+4gKY2A0g_Hl2mE(p6HPd?3wP5=yXO$qtnMIeeyE^n2eiLk}5-ik3%=u)|x zcY9kH-Mc{MCo^L%6huXKlKj%f(=bSg&o@XeSmxU5gfq|=YAOIUa`NQfpa{8XYK(4V#G!x=mMPFpY@^5 zWfzoS8QcW|3r1|}!6qwYl>!U!dp|G!dec#*GVo-L2M*^>O+vU5^`IpZ9bSyliIm9n zKlmhr8g(OY!F@qDj5UqqO$}UAHUA>}BNma;6cj)ia>4#ossNpY3xD#}9lwG4tIoqH zHn~Tx>x7g2!9M}h`|P3M_A9Z&*^?}ys@v7}lbT)-1_E$@rQuS+=FKc_IiAPIZcHwN zv8fo8dgc)E+emlg{u?S>!w^lsz;)sm)0Lk$)RtweHJhq!G7V~CcLjFIOJ^7Ut{ZWY znSjgs1eNf@%zdCz_(QI5Rb)O0a3%ZV!|cRG(8TWMgl!gXd7-CTho}!&mz=-42twy= z+;ezIKe()Mx~KDNw>~kk1I^vd(QQ55#3->@S@8TFMLk{{hh*ebscLb;7lS+fbT^SG z!AT5?WPU(3&oh6$B$Jdz2E*gQ6iN|SHApKDxAf;G1biN(zv1^qb=oR;YyAOT&v~ar zsU?5ECI!=bp$k3pIuJ6a8x!Oa(GK-R3%23^GY2NJANg!Bj!>x5&U)$(C z#3|b;%cPnq#!JmcNdBR`l|9Dtl;XM8T5t!K_vh_PL+1-6qIpKPT~%`5+;K^l%EUU^ zru+PTf#M@=l_p6y|)ZkcM>I!9$w;WNv1Nh5@kkHk9&XHtB$Bz57ZVl~-iaOrnrz zdJ*980a;BFN;>wt*_zmog~Qr697ngfCGXqoK0du$4;_^H%!q|_d5y>z8QppaI6GO= zTF062{QDR?8#U6{exTWM^72yt$KfLEMZ5c%)JE5@bGx}q4et`w_8*VmJ=5zofM<)A z@-xY)?7iT!VNvS$OlQ|VG(y+Xwdon#NJ&#kR(s^bOqfn>#{CuuyAeL-!vd7>z4Kn= zq=rte6x~a8?6lZ{S0h1McP`oib`(B-DyyWSot^H7a!n{c?U3QV{p(&gz?;RVkAD|~ z967FLfa}{ol4;rXlXVJ|n1vo*6$s5|?sts1Y{P3kouw?450x%V!O`(v!APEo_*v+E z@`vu>@MH3!8%4pe`y0clnMte%p+fzxWTfgK@4U-(u1~$Vcmy7uwRvG}NdpBPj^%U) zHo^YPq)q~!V@=yM!dJSSmSiTIze@Lfv@7#N-n@{utG~y-xry!jQ{G~6zX9#@iMIk1 zg%*|+(Dr+Uj+;@Twn~5TFKADil!+eFE2kfgd$alczq)8AK4n}5{aAS<`(^Ph-ikf9 z*In-0-gFr~nZ>$l8I71~OiD~4H&(dfiHOVl$RXn)?w|05@I;=j+-bhQFg~vGH83Lz znaoxOBF|EJL32kWch1gFpfk)%VkYJHkPJC9SPKlv6z#6@qO1U`ywoAffI8_$)d)qa z`oS>|SotOvrljE}6JzH|5+e)dP~BS&ul}S)o3Ev>S#@t9hk}$XSy$>EhJA`jNYj=P zBN=3aiYIai^?Bww8T|%pr|%(n-$@+p8;qu+9~XPb;=M9C8}+F^F1(3 zfdR0wf1OwOHbNx{x~e`cl#y{Wn%Kun9>VtAbCBXfg2b}$ga2#8ez|GD2;fMF7i7F5 z!EWjmPwfoi=3cGa7V~UR9Z-Fj>ZsWe$cCjoeqSJJEX#n*#|jNOx9@&P&%1X?_s2p3 zOovOHHXd%NsuT@$UVw$68Yu;2OK5Zk|UNd^Qw1acr)>gi2`i$0AMoUFDgx z{8i;8vGi+7re>IW420vuA>ZhEUT45Bg16-xq>23FeQWs+fwl1#G3BlT5AsZLJ+IXY z_vSl8v1F#KlEX#1v(WeM(=OyC@qJkPJQ6jxtvG}oaYkecARUdG`Q*K87y!GR+0eCoVpPzdc#-jrDJHaJWYw{KA6A!qPfSm% zWTVX^yy-CsA-s&9SmK^7A)G5dk8ZFa;x&P!D2PzqPMq%<__o`7Ip2i*@>CPwqPj%? zfxcwPLQ&*(h>=Gq7s_LKF_YvZ(zmleR(y=RKE^$pE{XGoGRb+H32s7e_Ccl3Hbr{N zO%|bNWBSJsUtvK{K{b3Z25QrC4fxKYf`q23x564KnuMbu(wLxd#^({tV6AFckUrO;wHHPxpoiLWZwU! zZhfEjKOu-j1H*59SuNGLg26KMPcD8*l!d@up zW6E=bZqY#zsMCtQw%M$l6jN$MuK|7~sBba~rd8^y^bvFP-U^2V_n26xs9s4JRVt!=m&T3r)Pv|FoS+=gMBVsDArtWl#lSS2xkZo${l27C zKa*F%{~mxbDTvl+i(}7oz0HlHQ8pJ{sr74!#p}7imc)TqC6uNp^wwJXyn1pdrVt<^ zPdyZFAStvjd2d!xyie*A)nq&{j~a~3F{j5?D5q4B7RIX*5-hnZVnJpu4^>_9io3Nn zN79pXjZ^55vU?+fGT2&321u3-TzGrV_3iFaHHMiM-1lF7to7=9w^qPYHJzHGR zuCPC^vq6{Z1pmHins5ePYf(gUD1UG{(5JuB{O)+s^l`|O!N`XQ)NAS0)XtiO0aX;d ze{FF2gdXpNNJwQc(ZoYz>4$azI7(UyxV{98o_YUf&H?PIKPrSQh7w-8DIPz?ueuk2 zJB<#iv(HuBp^juNcs2d-MmW!!fMmo-7e2ryCh@?J92B&%1Z*t)Heczi3w%_r-lZb* zvsKEg8*D_Lu`;n5dbiPCpVgm#yq}UI?1{S5QrtZ;OL9A|_Jow9TO-Dc(KEjjVKr;d`!4XMv4()~IbJLj1E!PnIrxla&vy}b!hiIc*)t7iDp>`4qEvIq zk<4&GZDAuX%dsrpjpmQML}pQ_)MdeJlu#tIU@!Zi-Z}ryuWsAZk987edpQ>aq5YWB zLx+xxI5eMA=9S;Jn(!lvc5^z6htWT@LrMD^dyM5&OeVN0q(@{xJ=6tdvktbyNPK$h$98VBGEfuY^&KM1Q zSsh1t`4VNn#8T^1Qikos$SWw*>llVj((%AV1|d@4i@a;zTp^avSZtc*ZPg4mF<5SN zmrexG_HTaJ!GPPfa=^>5?hc#^8*=PM%I``ss1_6CL}&@wH0#!rLOm^w5pXg&wkcg1 zM^aI)Igq4v1(J`m_Q1pE)l-{cL9W^2%odOn`FH%mJ%tZ#pW>ip34iDK3$;JFaxqwK zZs*cW<^fVp6u4nwoF*T7LexFt2t#bEV9gbdsVgBBWZhoXg*)ta4NNXBua#y+=^piF zE{EWz3^s*fgoVxce4{$)OCTE*%VXW%>b@q{%*IL9;`#&H~xGQ zz_=$j@2-Bn@zd@RN!w?i(Ld4bn0~J|`b2HMRPqX^QaVNk{kn`teolKcWB&q8F9865 zY#UWCO57+%?ceH|Mvj<&(y7&oiU`^9*sn;TYSJ-N993BGTWGp1OQL>?@8?_^SRBB3 zkbUs$xu1EiE-ReYraw5~#e8dS#TPw(Lx%JCjL)mi9fn@_@*4z@*4>#K=>I`>wJcg0 ztn<4Wq$u48RbCc3>8*cli=5cZI9JYC`r~fhq2coP@EB_G#U(Q z5FkOn8PZwm8*RrU=G}(m$@+}_I;O6vAe*msI5vOj-KG4qIG$Q3dyq(1dmYb`(K;#c z+?D5{Bd2RZZwG9TivXT7qn#C-kMdY@i$YAfujS?3JF4Od9iE}{ zmVNK9R0ha@!=*vB;!I)e9J(1Iw_ykCS3G6*3Y+(;tQE-(YhXnKV+y<(xv!oi~^5B>0s+Za1^WUrekQ>-LLO= z4SG*+EowbZ-NTf>H;tQ*PfJxtEUcl{pyhF^LZ(gJDPe=J((ku`M3jsZi4UkIbFL^IRUnjOC>+{|!5z`x+wmIcOYT$qGmriZrrb@d|^S?vm@3DB;NuW3?jJ zFD?9!hr>)E!Cws807IHJgi5b1I)81$#2dDD`sp!kL!K>GbhhW7li?obMbufG{pW)QSC{dc_W@ ztx`Dh3`XM)L?R_R(W^cxN_0-et{ihKf*FUeF!y|0*I9jv1T}1r@6Y~0*7_E~1GUMu z;}H&(<5cC7-87Xi7!&PnYo$Z4ofN%#Gw8$!S0kA=;#ALTd=M=;F9&$rR%&h2qb`=( zQ^mYw7|R%e$GnP#3OQt}*|nTu1KzvL^SAbsW!jbap60z%Ctn>x6Oj7t0gM~srgm5T zndepq9#LEoQNW`YrrGa|a>YAnuwcRI#0<4`rD>Oa(xgJi(E&RAP(E;a9d*-ZRZ1(_ zAid)Dt&y3y3$8^DL0TZjkIO2l_PN?a8Oif(-AX2f5vDQe^>0;=Ulz^MEy`GK}}RY`{?H=r%V$b zF51*`ecP=7N3yf`Plvnz%>89BaF7Y|L-4SX+02(J6$fS|p^wLs;Qg7)mIqT*!qAFt zIo6wXsRV?82nLa_bFKNIPtmx-Dm$b497UK~^{X(z!kj?Ub5xj^Il6sK0~NbvCq&Up z)OTl68uT*R7UOV9oH)zcWC|sQ=Tj#BB`QlKdr;G8AXKOr_FSk`sC>sqQPejGzqJn} z`O4j9JEqk*#}R_@G*?Y_PJw+_d3toH)zMlz#c4_A4qxVlbz8JvJL%zg;EURW17Go) zk7ctFS$%9Im5J6aRHFEoW@0w5!oUI$&E|}5%$RoNJSWKVTxRna#NCDlJtiYh%K)}SK!fc>aH#4; zaJjzUN>*xqt{N^Wqnhxq2`I1rkEuu%qlNj1#wh!2wx9y~95PVy#gFORGK(X^Ua}|+<3zbm~9z|o+)LVFUFoOk( zBFynrW8`bJS68O}OL}Eh!Z>Ay5Lir~V@$*l+(r9-ifIHY;S~+L_bayLogD^43<)VJ>00NA{9um0N;KjCU2ZEUz-kSA8@#E)he- zD${tny(u1I6=_)jzf7W9%d!HLvfN%DMxAe5(jln<^D&zLCH1%2=;EJ^pmv7@q4~)H zQMtI(_->wPZCMY@Z<1r8>ESE6Uas5vj`x_@^HD)L_p znMkX@XFNMbJ!vC3#)E0aLyxTBy?}#C_J#JLO&p1?IA6KK5ifYwsG(0Rb zz|kR_3UPNwt>fr*Bqe|v$r~RY)$EHgFp^J?yJFzhH_3+J z988d-Nsy|MOpX?7_iQ`LXeb=w?19fSeAn`NzApuK0f!h*$sk$b;BZU`Zbv=K+J6E#|t2c4F(6~0z`B~Z*dfMe* zCun&~;e$-?6pnScP<^WK*el1XVSUbI!Mk~3hrBtRNz(K>vw9}BkBJeA7Q&F1dCb0^ z3asbkdwhF>Ht(Z`j@VBXzT!*C*f=9=lANg+3 zZPK2DB(*N(nwSPF9J_Ptuj(mB(mg+!B+Nw@r^xhPx~*f`=nv!h_9r|_FV>1ifSPOq zo=OX-owDX|7imT9HRHEo&gR^0EvxQXw3{~m?DzE-=f(G5MFBpto_Q#QflXZj%%B<@ z#c>s3g7((J#YCbIc;XQwkTmw7y_pPS)$#g4>*=jC|EI&puK$B#rvVbcla*4j018yj zPYgy0qy;uT@AU-_VsC++CSB)7>uF?5t!C2El%qH4Iq7VHTC8XUJV?W$yoKX&&% zb$t9T8J&Q$AQ!z3Yv`6oa6cY#@{7EpI@T^Ma43#Cgr%0Xo*j70Dhw*Z4wogsUiN~n zHHTBH^cIcc2^YhOtMmg>3B5w|*n6t+BJ!AoIV!5)g%jDpe%`8HQAZ}}h3m%0&`9Qa zr!&>^^F>}%^=>1{Q5`*9u{#$h9p$r&gIql5^ry=4hgT}^h&<->Bc6Bswnrw)?Kx

zjbpaBkfM(?|F-rR?o7iUbB41Kpiz^5R(EY>s%JA?TXFGbblPkG;k3kon1H(L)Q6M= zBH~wl?;A*V3zeon+-|;gn&0zw{rott^ujsRT^)mDPZbejRcquq5RuHbvNqLbD~;QW zPHHOtCH(VQ%!HI>&LIeRGpF`*ruP`%Gs!WWfA6OfrGjWNFz8t-CdPZ`}ocQK0|Corh zx8u4iLp&E20qkKz+m6hQoCtIv7HJxiaY4*sYhAGD?;SBsY?cR*zNEoSq7N*}>Gk%&R)W`;wG*tv(=SR5Rwb8t@{|7QoTdzZH#}f_bRIQk zFQ>f*<7j+UQ`W_oPOBEV^YVTWAMNZYRBof-wj%-6ZSvZou!#tPvNL-y+VWQ@V-&&gmk@;;y+2voil!?`djr zVW9dUPKp>`v@N%EapxpM;sqW9H?m_J<=%SVOV;I?@U7`Tcr%dv{^2lIE3c!=EjI7n}AIm}_)~P*UpqJnD2YymebotiW+iH*tmL zs4c-o0y;TTrj;XE$}uGYHXvdb)~ujR`lbI|`oqhVUax|k`!qL^S9)!vR_PeA<*W*I zO4s3Gm&sV2t34_isE_&{8(T$c z#I$g(j)K$t6$hJ_${qxZrtfwMMo+u`rDF9fwR?sVt7rPwTrr}pFA;^$d)3_S$b_G4 z25t4!(wCCZcQvQ__o|?{xp>_VNtdBqlVmbeXGwWWR}gc|gQUZ(o_BDQL>IH_zALV8 zDjpxX+Q&M_y$1SdmZW(j-a3ZoI~T6)W%;8eUn9?oE*#;xfNFKGfw26^99R z@6}Fi=*8SN4XLM;9y$M(V#_DSXJDg_YTuE(%FjU!{C2RWgyS;dXKxaxXa;C+N*~%G z89sW8cVM$Q6=CJ=qM#JLkTMkyql&%kKAZ`8}D!kJNOkERtr&%YEgNB zMM@FL0WB`uXk4(7+Mls`)Igtl^UzXC*IZo@#qQScR^#3zb6Ob4W7O%{#4yj^POz(U zs&PK~7Ui<1w+%7PxOhWuw)$4Nj_RUt=ZpJO9i~Q#1L@I7#Obi`S_p#1F}KG*W{*Ge z)WDBa0{FgX*2S_jC>(EexbGCNQh*^-%ld~?FF3uhZYm-|dh2_0&RFA1_a?7h$K)PY zQ{j$hw~IB+(pxT^#VyV8dxdw<-mQ3Lj z5y~^JRj;7jigv&1Zdiz#%a?{)20<5uDIo9?6tv*uy2%IvK35?Be4n;&$v!lKWMw@7 z`vHwcROk6Q!eBMh$w11p10BAy*KDHMU-`PxH{{-;jc+J$URjSs7W>x9fUBcxQ?VK~m^ZMP&K?)FSys^EOuHL~|2TBXbdS6sVs$j$cdBp@XQ`smrilQnc#cH0;vI6b*|%>%5iP?H_%XtCvfMg&LK1amt4Vm7A#0eL_%a zhoOfT&PjDbqj_c96gF1VtS0h53{+8Xh$ z5W_AmOS=NLCY{$4rmk~Yk&|y0pVl?-H>0XX=!JiYU}#O`74=(}L!9Y`f|hxO{5Kn4 zfkvlV$;Q0Yqf2Qq8_T;dlajbx4V1dT!8$Im2RQQwIPoHVjMWY)NsZNtc%%y3QLv7t z>LeyNNaYY?Ne|Z@`iH6+?k?JsZ>z-I2zAk`cYcty+cD$O`Na^LxaX~u>MkS~ZhLxp#gML)!UpM;8EQbDaNvL74*+5h zwbBTKevuyMMbve;9w{_ZLi3B@w6d~`s_3XCy!;xp_yympcs+wKf=uGOk&6>bb#rb! zq%34V#+&!FZmIz7BI`%eYp;iH<^`3kO4)5b?|a3t_XBT^xKQo?$O7_t_nX7|1jpQU z-I$SFYjwOWESSn&FJc>`%&Vy+zT@a+-jTR@0pCk57^A=Tn}68#I<@)}hEtdX?&~tAaK&y(s}QbZ7g=nYL)=-f58%%_b@&h?@MbXS zO;UQ`_s0;QK0DlAmb8qj<2cx^AVa!ihN97w{PRFl#f8%KTTodlwi4>1lCYUlm6o{t z@Kf&F5rKA4M|5C4pO5)5{mH?C595S;ONiI1AX{1VKRHu9`?@#wPlgFaq<=hOlU;GAkAIXNXpA=_Zk!8Brqz$hdSGn10fTyykT&koy^}C`hfah^( z+UeD+ZDcikJkK$U^G?q$!$NFxj;_b1kR=r0NtzD+Xc8J0)uwD>;ESMtz~!4myf+cv z(36?+?T>-C9{WM+`4g%^=ftTGHo%w~fWIK0>*~V45TqaB;0yN!!-GYF@rtNu)+oMq znS6f7RZ@io#tn1OKL|GV*>c$?0^E_`mT-Thlu78hMaN^g>Zuy~A_XMJbsECVB;r?L z$h0tVwj{pW*Ifxc`Yl};GFUvp6=vZ0{1ADIDWHOZsX~V-CVi99G4b?n&>AqF)%mTA zpfs<9`I5Qp`SU?ht2l0XX&b1NMAHHrUb)1&Cim znIIq~;xNq@Fqom8jMt8ITCK_E&h5e@ar1Zv`SzAu7~ETO;gJL&V$PGgFA-L@RKj#1 zk>VveBKRP)8k{o(XY07=Q0%DznIqC>jRI%zy`;)OBv4BFCS)`Xwkajwn`TqCRGvTF z0sF}u=yO8D06tX#(x6Z_4*InKR;3AO_@Dt?ZHa|Mg6|`yU#V$)_y1Zt2XW6e*9zwQg`7*ZerF4eojgl8PmJJw~JYI}t-hlPO%cFID%MXH` zET~*y9U@9${WuHTbUk&4g3Ax+M!h^+*T&8|8OA<@luOom-*xN>8pHHkz#f$u1yDca z{JJM+2m_UO+SJMoNgwU%!KL_+L+5AK8a4pM(lrQTqv1k#p8sQ${KrGTnOgu!BXyH@ z=H_;SLcE3IIt1sc-b|Fh*%QmS_v1SLD721TtkJhqGNlV>_cM&uDYnG~f{t+Kxvhpp z{tZd|HkZ2DM_sdk-~NHm%J|QFnv)z+!J9x6iI2!PNTW8Y$GYQ3II^mP3_1l3vCV9i z%`T7!uxp}rGdHG-n3akn9qiv@O>-S$oLKxut7jW(1D!taUEor!!ik02@YAsCAHHDW zs4Iw5mjixU9p8eZz)qkail|%%uCTF!>)lBMuQsmpwhMRNFJ7Jd2rN9X5~tvInoraf zTe^t_LCkI!5GMu}Uf<`A3=Q+G#q=u8ON7A9bZr<+4t0F?0{G~xZsF3vs^fF{KP?eB?|_SmdKXdgfV^3~y1cB2LN5%psD`UWG=q8K-e z@Do@C(%h?qb>~$eykSnk&`HGxEgv^HWA-LtR8~FV483G9Sg%r8DcKMalRBSmccd=L zQ3P|#nf`3~SjrlJ(l-OOUKEJ5r%o8SJ&X3o*<6;C!F?2DD?Isd_GCqPRIAY3K=@ql z(s&h#HBY~nu+7ZR)2uZvuVkCsf4L$Vyf7j_c>^TZx3LT0{#bV=`-a%wtem< zqmeBtsV`w`U5L)i4QziF=TnYa`WZ?r&5^>Vp`7nqzr6y>K0O&z4v?ezF+3?*4DEi~jCFCr<0Zx(apZSFnnBJU zd2v&UuGLlj#G{jZsTAaNKzjW!Kd^tc+T7&+GwW#0nxR*0cx{w@4 zs(Kd=6fR{wY{~^V8X2hGM&)z>SYPla(HujY(WkCt=R{M;wgJ^Vq6xy9cKgJP<9E2Nb66=LR`S);kOhHo(8;UvU6NsjmNU z**&-WH<#T;VrTHAh}sv0!jMkQcOe8Aic9d=Sk?l?x0~f1piSGi6z6S5}wx*?>+2#nhqZOVrWs_-SegCpc zCCuf%Jt9Amd^{8Pb@oRewUzJ<)>9zK^HkH)-Cyfs7R0HuwKCRSI&yf|b&zX2>=sF& zlJPh};ZkrV>W+MAchAbOh#o+iZpgj99yYG^z8_T2Xj2Pk05HHh!I(;d>0l5(na}|n zax!-(>?&qq882>4et5O1ZDc+d<{k{$M2L00^VFWSlSts*nZ7;<3jxHUi`hHAWkVoH zp~E|XMwj~IJ2sUjf9C$wR>N+nzZHj!TnF0jWPbhJvjX^JIuZgj@r0dJsC(C2!vk%# zW@GMP=u1IH>AqEZc4f4$y8OMuG}R}&;B5a_^{?HF8o6E78_aNSxLI{ews9Vd z_hl-Bk^6%EQ~yh!R#;27-RXL*L-8vEhr9jo+&N{|kB!Ex{K zt+~BtzU+QgoJts6;U*~}cC^Sz#n3_!9ny;k_gsI5{RM#S5PaNw+9~Hs_x8z9CO*Nh z-|`0>!zya8|ByeZ1mq85f2h)0rPKav3sjSwXAgl5P=}Qf1HgW|lF_9iQLzhchzZh} z_UrrNM|dZ5?5fOZR$JOF=9vVl82(^ZBdnWo29*`+>Kkqn{XP>HBl&+`euThoB!ctgx zL~werF%Obg1oxP5gKl^xF(TO+m#%A!b;ZkrIH6|VJTk!mV?rF)f;kbEJ`r9UeO)6?5hoWQVs}fN3x!W+ z@-Ax?S+QnE#b`x)0qqH@b0WCmbuu*s2+JV5mO|L7JB`Gz$0F->cXsRQZvJMb2} zO(Bs3;%6mT$5pLn%VasgPfrfH#!^{9uCw7&HU? zdEt=@4HeR&NN!0Wwi@ov5`CCVE~ULSAf-S#xiHgCZD2F!ltKrkxxo_KCO%T?w^&L_S{f#6G-jjj{>r*bLE?Y}7$Ybi= zbnT+DD!8_AQfSZ;cWK=kEPcuS;8YQ#kEJBOM1mQ(grWbG5g7SHMxeWr8n;XV))&g! ze|m%GW))L>{Nk!{#Q837 zwZ#5cPMa1IT=}cy+B|zwiKmpPX>&zb`n^0{fuV0DX%jZ0Y zioBSbC!i~LPnDftc{jtUcSknAqadIdNmz{*kUm%gEWddu4Eb4VBrooK+P(mK?|@C_ z*ebV*Z*fS?pmbUg76^efVVB_a%c^_bA10|aGtx|^ARgK3seSx}QiP7H(Ia9>Py00k z**q8eI5Xc{zNYvZZnPh$LX{L~F%=CMu9j=6GKU1t)$F7OZeyBPYGH(R+6;)wH)wTw zY3XNK`NM}jj(#*&=L^@p(QQ-t9&cPzs2yU3H(z&qJLNX~<)#1~`3`k$-qs!8_x;iC z*gG5}tUBqezn{&&VqDWBl4Hwzu{K|nB?GoMkNQNMLZ~Vj2AwsfIBWb|?^PPv;-vZW z{E{nPxgK7p9}zqYBOw_n@50#RS~m3!UkbiOD`CnR>GuA&?2gtI$BFbYYIE;8zwHOW z{2q2HGhZ+XrJe`MJ+>%`vUsmVkVhVlD{1TjI|&AJ;xRh8VqD)TKG{Bgc;jZ;kC^K{9`z4VsOQ~jVI*4~N>!!2E_C|&yvyJ-S4}Ha zK*~jWhpYFuK)BN(L9ylY@+=y{b3qX&BXLp`MVpa^?o)~x(jH)~l-NO`ub{zYQMy@M?#x z3k#v8RCtGTPI^;<#&r@Ks3ZW7d3vCCAJRm3{Y~r-U~9qj3M&h59Ez|mM|0E|z&hcI zAtkMDfTw|&ggFWfyPZib%%0ap&QYI7PUE+dID@RmHm9ZsyU2%fXy9 z@i_N{#I-31BU(_?_MvBwNIEQs&*Yj_ea7|!(`+4;pOSN}ZsvA{9$&`l)TGyu&fpV= zV$TwV6WL?ZrlF@JcA}w^*e8+oF9}~xiNWbH>x$W0d;Q`ieXV|4gGlw|#a|#s@;I&& zZ$Kyu@VvfGXY;CgfavnD>z#)g?8}D7hno1079CKV<-hVD8z0F-Hj_7X@u#Nn-`eKd$Y4X23J9-yvtr zGkc_%H9AnQ_BJr((WI8Nq|ReW)R7cBd*vxV&*2qN;rOEHM$BEBQ~WuxI{uKr!UTCf z)ZLAiL0+%V1IcWQBhs7HZkArxcAn=Z_|EmH0Uv2kcRsa8`?T!N4 z?lbm=M6WW^2C)?VR>O!4NiwbP>q=OhJ&3c{R1TSWP* zvH#H-v*X*si}8r7czdgXSjXKnx0Vr{;`vU;u4b%Kof8MnPEYC4Y;3Yyo3g-WJN;K+-2sPOI0V21C@iLl=S zd~Lo8+Eix#7xDZi72s(TQK_*R;-?;gt-^Wo8u$iqDB}3-XDU=vdy$XKONxQz_ug;_ zAqbCbpf)JGHo1|o0K(zfHRPk=OKqM|SzK#p8i>9)Q_?OM4!g^q&SI`YdLS+VkSC>9 zOWd7WaF!)k@Td;InIGJbpZARr|D`Ciho!slTV3RjJeP9!nmCp=@MO55_D}Bk10F%i zQoz7s_;DBVB|(_JjL1{w)a~BC`$shsN&XK6h2H?nvYM-v1~?E>K)6lqdMkpEw-Zxp zX;8DXU9#i>LrC=so!G)Aa($d44p-^!t4@YB>4o(br?p}oX|L%nT+;>rlkq+ufdCnA zS$K4UFO8K~5+qWQq4ZE?)fpx#%a1&eii3K7@!6~PSpE@j|2^A%0zprDf6KSU7oG2M zHdgrLylSiQWK^U-v)O_b2&I4Jx62BqQ&B(;D~%lUlPm9JHC(YfCQ+Uou)O;$Mee~N z6NOLCrew+bL3SvmL!&a9u)Z>#8br07A$Skm}DB;LFBT={DGu3{qE&@!tC;~ zCJTjCGEWKBMe5AUNa85aVycw~3~DGLvq%yeA*v+iIzuA76BmF8o6ypl2@RL z(-UGxa2(aUK(3^3I=mqt{nl#IKg1`-l8N-AV+JE`smb!+gy=0~W+~j%rdp&wP7FZ- zr0Kng51FVg@sEhbaFn>bDW%&-thO+K4b50*1Md&F{D_b}S>eXu-bEkBC>@AU>gOnp zSFdm%NG%+-la`$3|7v+cuO8kGWT6_-yex#AdvVNccQcswlE3g1V|c~n+f-KuU@5w{ z9N$oVDCW2x&EH18&7~N4xbQTBa@@aK`;BXue+lO^(>-U1X3m?jJwCE$<#i_r=3YnIxCS}N~H_+ShNEaz}4a32It3J`hG(J#RCtqv@1!jfD;BbRo`O}`Z%JC_z z_*6Z-awm%nt8ES+0IfAWx8)jq`q3Z#GpFymVf-YtUO^&W_-p+zLK5fv4UY~Ps*bG! zHbOE@Qp6u=r_qVM2&Yl`RL9tx4l+ zDX+)6vG^Su*xz`nt@yFOQsyiUU@C)BjCPR|;Agb%yHTj1ZS{PIt@TYN)sva)*Dn?q z&W@snYFIy*OFO^T&p)`@uZ`(N+dYx9 zm|w#$*Dm5Rwpd)F(8vdT5!FKc*A_MxSl0ujNuRNnqNkvqAwtA#Q5T>JIE>S-Wv@w~ zop+ZxpL{Veh-8#QeYEhjD6rFCz!!D1Z8J`W2?~n_`psfy%x1$Aa^>78k(l%<+TKOA zk}c;us;Ii-3$#p>#{G~*6TZkV89~o@j0zUZ^e=%4@_8Qe5IiIYv(-)2Y2~z_J>`(k z_AK1mq~elh+$*aNowpw5!@W98Y=@P{zsT^Gr@nu#Cy|JfRYktYZg)@ql8-ksed1&O z^#pIaB!NZ1v(P7=WmMyISlU%!+^g5>X!W_(>sT1Wzr9?&)8dyG(9?9P58F_i=e&8)NQxFP=3v zo@K)cwQ(u(o67O-JcF;_=KXYq?fJGc_ak?4!W=$-~=)i>g-_)90Qj47kKvW5pulX-z;K>!IOl4OZZx zt%)_$)reIVTo#GySmjSj93;!TTbf{Zh?{V;7jKYw3vlhYw-k_&@pbHdv^B`If7tD& zKY7Pd-9qOH*REdBjP}paLsO$G+@B-ChgR0*0 zs!jCnY@cvV)^EGnl(5Z>Os)M1fCc{zP@DO|W^IKV8r)Lix*V-~Y6R8FVZy13Jfszt zWQzhJLL;y#_KmrX!cFHl!$?nF-DLdGIC;Z9WKfJ4ESFlCEN3N8;prQ%vM1cCYh@LU z^IRcG32>&%LPPvSN7B$r5PfD*{gpdz9E&I%_4DG{kX2Q@}s^0A+F-{ z{1Oaha0eo+BePq$k+*fm<+owBZnFAIcrU}7U^{WIa7Q9agL?Vr(JxTf$TbN2iAf4} zOd#p^pqIa;mo02I#+)(XzT9{AmFJ!B^y25jc$L?%oTj~jJ}^w+PCLDmN{ir=Hy+lh%Sf%UfO0aHRa2JM(|bsC;$1PTZi8(byb%X#<9qiFnwu!brhl1IR4A?~9JO3_Ovn9BZSju7z*-P`%##1CM%99M_M5bySs%ULaL( zP}|&jU`PE@rZMf;c>sEIll==TB66p$U9VA^a}Mknn=h?@Djiw^8( zKM;!g#a@mZ7)&n%IQ0a$g@V{6EIt z!Y!(|T^p8em;t0DhY+NtyF-vxLg_{rx?u>Zp+!NuQ&bvMVhCx00Rbs#kZu@ah;R9O zc0AvE9PhjLf3Vhl-&ddKd37`c+c0)k;1oNh#`;9Vk1B;V%a>kQay=gs3WX)zoo4DZ z-U{~8+lT3GI6)tYxh-!6VD^Cdu5z?8i! zZ^j$seoiFCc{k3LsW9cc+}T*#*_9e)Vj~XdICWzq$QtBqHLoXKXsetblw^oVJ7hCF zsNXe~CgD_zIRT=%MR%~Vuw>B%=W@N190OKlY6eAWG?pGXi#+Bl$P4=ONkM%9X$qZ; zM>toN3JCnWePXMikf~VnE1#OJZgrj?JsZza`c8m3JU2)DEFGzE5WXs0wBqm!he2k+ zD_uZi-n*!m{Z_6IDK;gxk6t=C*mh5$7~XmjjWaHIN!oq)vI!mhWhtg zLsNiD+E)=_v%RTHmJ3em(Z-n~UoMm^oX}lquiIZ9X5?X9j*#smlBFr*}hw3o+aA5aT&C zXQx*q1749{PL-YUVW?`1vac4focmK1{->scZSj7xh8Y!VJ^v+{&CH5-Ho>7j3DC}< zgphd2tOYUO;*)2T^W@McsJCP2HTsVH{=6f8!55;%NL3$UE8ygmPc^5XyNFrxzY?=l z(`r9}qU81u=-qQpPEF-ynv+pN6>KedPh74R{0R|OQM;N)Yfs7jcHuw z=;1dlud77A?M;`#_znKaC|F0=Y)PwtJ?*p~I&t#qavc2;*2kCROKbBd@r)W}gp~35 z@B&>|DLc>UZ1n46BY)*~eRbvbNuuZaY+&P2b+eVl^R~0@-QBi>)AuaAVXG&HeBN zRHjMhvWg}0C#uXW3`94#d>ta>*zv8Fcf<$V;;>}|AUiqBM_ti&EYWOmWxU=2n?4T> z$vt4&Nm193kxa&5z?Bf!nS;z?_!do2!OPb0|M)aLw2AH&ZTE_*Gl$hJ`;D}=FT3ik`7AKHu0~WC|(9yu+W=IohA(F@H)lRr~!)_6TiCrF12C@fb z>U772Db$}y=-%c15u;^q*L`#nhVU!(9n>xyxsXXtSvd)lefJhR+dBl}x-8Te{LZGf z%_5qH+q4@xq&?8?HdHg%eE?}+Tx~Fzd^qYRdq$B~d86#9w&INIy_&!?+wako4yi*+ zlldMV3+eotBiHU(ClhlxG8O;wBK}h^k7UbZsN4qGfStZOM?94bAo!zAgOSAACKVpI z;^=3qcg=ASabEE_wxD}sLfGv1%*djW(f?v>?Bg)5O_Hotqq)wBP?%QYIM+6jPw&BH z>kJ=q@pPz3&}OJX53SbIeq{gN7DI@lJzhEe(RMu>I*BxR94tvYCx z$2XRt^>UWG*eDwmt}*dpH$njysN1P>zl{XYv8s8fy8L+J*sjWKlloTG1$(MaPD*&M z+|m2VSx-=p<2(QSvI@fu5&*=#e7rli@e!Sr|A~~bxka+&O5sK_eFJIssmiSFg_|7e zG;<696vB&1ObcVica`;g&cv(UqW1Ana&;`I1_$J5f ze=Fwe+iz`@^jK^9JXK5I?i_lyw2XCzT20QOH*-qZirDQJwNIFVuG##(`cW5(v$KP{ z$&@QM3b~t}&Jp!VI7G|l#x$Q*SM!Yny_OV3&sJvbP(Ef@ohh9o$sXBRvfKtA1 zp9E-~HLg=*{Jo(6m~Ej*4aeQM%?j`wd!0-L2#@s9Hein%jP=8f>g{*xbUSX%jK|Kp zZMCwNQn*s0E6&34ZZHS5cd$3nPh!;&|BJpeo)^Fai6YmT8^za{Q`caNnREa* z#5P?+fd8P%O-oBNFD1ccJf0v|wb2~c5*I7)WrjuL3RuT}i#?I}w%=q!s~U5}t#zJj z{C3 zkyytL)Sxbe#1-6JR62plPtQ0Goexoqw5lV}<*8F-Ny1BtSMR?5~f zUY(gF#TWXEKR#HTYhtQwI4+{1y8%?kwCNrB0=#7eNgmbHwGO%}vJkm1s2`z+t+Tiz zMiWsG?q~T$+}^NH*jDaTIf1MiNE7tdA3E~UA# ztdCxJ{0(HZ_fn~m7L`QkFsCO^bsm3@#Ly1$DsHPAJ~z0Vx@;+cT`hDUL?YZCDK;5O z_MVmAgnf1lJ;f+R*CaQo4*5_m%Ld2T`N7!-Pe^x>h)P?rlk0%)Al0BgWN-Kmd~c38 z{Oe#7;s7(7YbIFPx2F+oelqt_;eH485_O}$*1#V-HOiT{dEB>Ef6!;8!)k{-(lPtg z$nleKl#|?sLw*60J#Q*{{{zI|9Hu(<1s@Hr|0In@U2Y>*AAXF8*{>R@3ejyJS-n)JYlT`@) z>b&Lb^=zvefP4lnVmz5o?-@zpE_k`>$#2Tan3KuaSQ3X_@mU}2l-IWVwA%?p-6G)~ zg;A>$oEzrE{iEQ~pu*)U_4|^trMSVWxg1r?GAtZhS2PmIH60;@Q_9PVVD8`9Hqyz# z)L@>mWW}kCa?+%IwHs-y^Mo-$lV^M~F-s>KH2Hpu=TW2GA(yW9xN8Rl0KS|T%XkR$ zg3K?top1NMm{48F=|WF}b&lUf$e|3+F#f<^_=QpGlLG+0fPjd{6~sg%YATuaxS zZ^}*oI_vPsp{Rvr7j}FSLlnR3IDgT;cX|HRNz`nAQ8~L0Ve2;i>b9-4txIrZ=1GIg zyX5}Vki{d-BifmK7$!33Cb7z`Xt?|+sO$FPTlfv!#GbKvBdM9b<>c3PcgkFod7tNX z)y-r?4B5n7vYe;qKUXx=Gp@h?M&E=AFzbvE=D1$c(2{+4LQ&Nw@u)hIvo5R%S9J8A z(RYbF1I5G}@e0T`{?O}+SzLyY1?t1!-kARU-k6SG>&ZO(%44UUtY7-{^_+mrtjiNg zqq|Mv`8G^|rT>1C`lcr+t_YO-4Up1QXO3Udn?euXiDh$VxFXFGt6`U!4|n!5{OI^X zzXl+QHVk)0-qCXC3BworruC8+ae|`|YIU7V*PC-MyRs3X#7ma%AhR#77gR2i)GYL_ zv^7gc1DbUx`85vb*QI#AGD@x8Y|5yy+%MEWFc9UYT0ZGW@4gFKppccYMvDd!?2*oJ zMBu&cKYP27Kw>jHFQL9tl$xSK| zg~>YHR&qcbQsoIAF}V3kiUY)rGA3bnC-?NC`ykxSgbEu>iEaFrWEBz@1vS+^(1JBK zrn|-d*o0H8qS=F^)@fZlpFj{dN1;wRK~YCnP#nbCD5f~J3|YPBH72B6w=|EUzr54l zJ%uehXM#a2Z`S~GaJ#g`t=p8&v?7;6UCI7Q3cTf0*2Bt9D9T1r6k=Dl5B#D@T{f*6 zkS#f77;0KLogcAXWI4^_3cg$C&mM^ZUf1?wgdc*jhUh9r-fJT*C@3FH>5g4DT+CyFBC{^sw^xRf{`+EWu%!+IM7NO@s zb48kbt>>;jEHgMyKB{Y?u-PX`bY zBcajgA4Z}odTANy$cPR7`HKxvg#i>aI`aCtQ$fR?U+xTBLqt}j!VSv4rBgJ^CAqn% zCR@)8+GKpp55r4EcO6I|%P}&E4^l9mwUI3tP_JGIqf>h9|CYjAuMdip12m=%@;Z7o z+SkFjgqmj}dj~(XtHtb1YWcL7l1SVXm2*vUEWa9zSJcV})D{ zI!bt!nIe4(y;*M5a5Dnj4G*0o4{&nvNEk_`J0QpU%BKo-l6&3x^)LinfOEEA(m8Q< zdGxLOj(@)o9ea3}%Bs_6_xoI>ypfwcI@n%2^RXN=&mqGb*u6REB5!aEmA+nIlr!9= zo3WV0*XNZ6Lw=RQ{h4ML#isFJ;dqD^J^y9c+JRJl&lHx(ogrFd)a(8AYHKhfJ@P<| zu=-*}-`2Ss1w|3MUqZ9Y{8X;=k1(eH1f}G(#hv{m#5V*neb@mO3uA#UJ8nA>rqg@0@ac%VmI|%0tz6V zf0u)gGE4VHdwmGk#)|Y}!)#E%%EHH?8-Aq6Q_8A@CB?`e>p5XS?zG|qr>(Ur$#I}J zIE|6y5N@3=-|=TmVqtV{_ry)YLOx*#dU#=>x}=M*W*hfi2dcY=|rvuZDjHPbHUz#Mt&C=@7PVidYPeslclvIc_GIDc?^# zaBOyq4E)fJu>a0sD@BL>$fx;YUxPSmQ}dZW)x2Cga?=@davY$WocHcEf5Jh`&gpNh zX~eKAIpF>kW@3}hFU|V2Yg4X+i0N1TL>E5}Fs`(PFJ6fYd_Q>H_ch-|P-tJKFDgpl zEMa2U87>-)_G1SAKZRwT>U{M%*@5P@)fpC>^em8W z?JOtM_aBanCke3eg{}iO#ZuPgCL6iOu>UG`>7Z@H_G}@KM?2hrU0%4J%|wv^xe)>I(IFDC|VN>`0_yprZOXWB{ZJ`h<9Dy;;@%NzXF^)MQt zXHA#6+^J{V??~Fc{@jo_2;mAPOZNz#aX~F7N?#Wj*0iNBRk(Zh@<<5_T&1c2?CP=S z7c9V5R!&>(6W9Tqs_8^!wiQsyoS_$(1B6h$UeqOfKN|5IDJe%IQxN= zHgN;EROxcp8&?NWULPBQNpoEd_c+Sy_KoRPn3WJ6h33F0utY+vFx0pTeNowT z@rbRql1@L|}LehCKbg<9j(Ywh`B|jqv zBe@ETjpOTY@so`ojdu3>@??dY0m*0Y8k4y%g7y!W9_*?;r66auNzyyTkYsWZgv9Uey z@Gv|OeWa$H1k7lO8D?ts=4gbtj_(5pOTgO^Z79$3I`tm6_iOPz^Re8g<@`rS`Eu1h zM1=*__y#9qjE^^|W|OHD<)`FszstGBwp7Nb_>6ITV!twIqirBAFBkYR@*7_MfQNMeVB^{Rg{dHo?yS-lhjL7$q(BZ)%0g1DB;0Y>7eQJkJiu1 zE(;WLq}A53dY_wF-GsE(H4D(1GpxfRW>f>IxnmbgzsOCh0HjBi!G+=ipS`K8!zE`= zi$kk(DbEL&hCo`YA_=GCfKYt;;XyrnJ;jzMJe*OARKs`!cIAUNG@~rG5p5-*k4lTQOn?8gxgneo#P)v0{UilmcelPK1a`_@n8Xu2JD9GMOKM?~a-XKW-%LN27S zfzd>lycOJ^LO+J=cGhrDF6(^XWaIu%>(iUiz>ae_;_iASbVlRSDq#y?o$i@9x<5x3 zhmLk|sl-bQEAaWO8}`ZRx_zqNx&>d-$1+q#{9F^-ymZ zz8doVU-*fP9($v11JA6cG`W`}e#C>RW)p`D0xQnxo*Syq}6>x56(%wi09|_-$&y%sNU!ZMC>lbF|kAPZM#TTZ~ zwY5zR8>;Ng`0~=eJiXTUAHo$`y z@n3UCZIq68HAyl;`>;d89MAB!>Prag(glo(LvkGdG8a{GiCrw zOoOlB|3;>MJ__>TirkCVzIk8ATSk_T^kF^y$;-BWSk*ZklwF;`Lu;d>D)$og$dsiIUx4Z1A4@+NKb?v*@OLWdCXFh)G9X(~2D4% z&)4WAt<7?|(L^@UiL_zh#9mPB*4{xQ1nh^Wv%w`vA=Jw$C=4&qFz2UR6|T8I zERT(qXiLW{ne4?0@=6kHdw&B^fT!H~&6Fl$iU!%%wh=B!LI`8d$oGs~g>I@`&)u{1 z_Dd6JJ#?K7J#&Ju53?^39m}WvM~;yKP@X^PWu1y6pL4`!GCXRkGeURyhalFA zw)PkhP|7E*2vbyf3-XOi8+Ws}-MaF}&#c0b+rC?D7%}!UOsQ8##}60hu5Np5w&Ou5 zRT#J^R>#MO9U`X5hffHJaaF%EMG#1qHDBflF&Fn6jl`b`R&@Bz1xV{Kehs_0>61j|=I34SKmfSxXHx~tqX^ST7(^3nvd-o$ zoAMD}_u5OtN1_j)SG@nD+jg6J(9?PYT#e<9q;h{F!@;HLCO%VcWPdagDTAi zqv91Wg`f&Va)s%K()i8LjWZmrZYQ3hy2mGzC==pJ?rNtw4PSA_uEkjTVaF0SI@m&t z4gBMhhbi|+nz@<=cb`)hqWf8-f%2~$roN1MTTX6Z$6jMbqj7Sb4eL%$I{Lxq8ih8> zSeOc>nroI(&G~ZfL2X(}(JE!PM@*vSzYQKT@MtX_bVic`eDc+5Z${6*SzhApbm;Y&54h~pUuHir=wZowtgmTr3$H zDqPK_ltoDfpUbpQ^f1funM#4kGCfo85F@UXZMmZF(-`I7o=e${W(L+V*iyejW`s$C z%!x*(B*53N_d6|emBvD<63+`#Elb`z`VbnJbM9iPI;LR)ykw~?m-{cvYslv8rLLk} zHo#_TDHd;%W2ZK0x|`S2nXl+46`WoYk0W|AtdyjpLo{6aKowx>S57BdGt_6{J8Ri% z2G8(RLexSy7Fe(HHuG0PG?Wiwyi$J%A{ODW_kt$_^=|pq`%)owlKz|f+q>I%XFH~O za(=bVzGtu6Zl=c_RE_BBGj;)VWW#mSPdtdwiaPh}S5DpcQ&be=m*~yP@ssKI6ktb^ zisS8Pxi5i^z;a(M)8&8V)Ae4CkrWK(aovzOX+pv*M%9uCxdrtMDg0&q-& z3DN6raN<>w2(b(N)KJ@16h|?^tgf1`;%$SMb1Q(8x3NJZL+?`V6?M#7jpLnuigFog}-&8&< z(oPz=yg=qph2k(UFceo2hb*r<1Ei>L{)u`S8%oa-HpVa;y~}e8x3S9Bjg1g;N>wr?+#VZO`ta-Xaw$64gJA%9s>> ziG;-qo`mnVDW|)=a$dB}r;e3Pyjs`MKte2fM2>Ziq*bb4xfA3^a?{jHQF?e%N&k3g_IoP5T^>w*pxn03{|!vxNlCwKxp)5G(Ms`W-`$r9nPkmHDt$*< zDZ3|-Bgt;0fAZ4-qqNbpIDy22_^m7aYUo%k$^>wxR5pPCNcX7dulXOPsZEuO0hvwZwCx{WSsd})y&lYV1BzS`%5`4 zkgAg5%5P5pNSayTx+qsamC>@zr+}sFHaI^(@%9okHQH#@Td`UDUY3=ihQ$RoA4L6n zvIN@f4$yz&?+!rth~G55%F zqYzx&VtcdkV@oDsMylqVeqMw?Ijh&Stn_y@ZBb_(a$ww){j2($uXjdj+wEr4Ux3z` zW8a$NQ|z>#_p}GZ(q_e^6hiFi9o;K7vaxtuj9?3q#1)9W#_BWfyckrCV%tTx9MV#kJg}rw zgjA4EnFft*Pv(q2RAdD1o0f4}8o|)UvHH&_pQj54twD?9-2nP8Do;`m!W6jZ$5^7b=kpSM=JmPn!GH;1Zt zhoANC)&APVid=hBUaR?E@iudUVHBn3z=W*$)41bzac6ej{pK6)T|llbK2NFGNKpFyXF5iVdbY?@ac# zZ%4zPpZ%h!uRpKa;DJFNf`;; z!1vd;VSD~^OV`%{il^WUQ0WcO$qs#7U0*H8Q8#>GTKLH*-{m4#=)g@pTQDPFjVtMc zjuRHvuu8NnRCpVM=JeCP%@9Npt60axyZ=a~s#??$+kZRD#84xo@Y&EmcFW5y_v}#_ z)8D&MxQ?g8NmEt@V27-C0wlfyd?d;d4KrXTV!WC#30XHybj-^j4FJ zCQ6qNoVXwmXO$qR^l#XUVWum3y-vc0yk>hq)d5XqL-imME{b8ZP=kCNpCnAEqVx7W zYY`;_rT$Atu(;O2L-+Uz%Q|!p2eF{8qUQep9Zc*uDAsYtj~_9ta7-SXu=0OksO84hLFYa%(NF2528 z>I53yg00zg>6gkme*Yy6AP9(fby8Y^5;4pauW-6?@-)7w`sAG4pESuD91)>s{VB4| zT6>!tHuBoMs5!t;2Ctdmd|l@Fwq$(M_$4+EvOMrZ#Lg=E0P8B=0G82a`RC(aJ$4BvEJ)x z5ET2kr}F^YK$R0D&bm9^02^#Lj~o(fEhGuK598DFMjqcM9BHiT88g_^O%)DU54DLMm&=_JS+yljY2T5NG|T<) z6Rv9%EL@)B0Co;AAp1apij+M))C+Rf=@>M}^);`G>^g*rHc5nu5?oGe zR^*u)1uw{=S*4{gU0wUaWQi_CZ+p+_U}mk<>_sq1HAGswq$*co_-@9_yd7cpVWDoM zlq?>y8aDe&=8QNn8MOGa${;^{d-?9k92gx`PvO{iI3I`V?@%Q^g)e%1HJ~D3Q0Q4pW?Kl571@ySXe>SjbY7@I29%kLV$^a!+j?L4z71+>@jEhv} zUwKzG*}wqjq;dB7z$HIPXZ5wJ>RL=psA)CAEnzEJa(re1!-_c`>`l5^Vp(4M?k6sT z-B0g+lntd6=W8BWEC!<8Oa*et@IZ@_6%z`%xiJ>>rJP)_cb8Au*Q$jW!L0wLPkK&V zG4kg%=suNE<)r+hKI=zJ*TiSF`CTHFIw|jHXBkX%qkz6#@@D$9>s)@PSnrGo?S6!R zy-A-~(=`XO$V42903St7sGZ#=B1O8MV!&Jhp;DgCjqVM0kiLW*djEnxST$~C{l-a9 zS6}cb_(kgL8~TmDpIiwY!!%GP&9!@ronD0%bwa^$D9 z?~J|od3xq0BT5N~R|0P5fAmmg$o~KzWj_3CU-J+BrrjhChnu|w_MhoU4j<7;a-{?_ zb>vxu{22(8`Xd_sgUQwR4PVa7&r+j(SyjOp^u=7YlT;V@yq07)$Nz8D31Q z$A6xxmArxDG2LCBjQv76*1d&Kd*2anq$P>%snL(2`8tEfeOz{KdK}zN67fZOS_uL} z-Y^#<6TLu58jjlt`34>Wgx;G!nU}jq=dE&iSpLI7qhWOD09@>u3v-DWq^fNwGT<^` z?_gM%bLN9%y-5Gwo1esz+iEnEup(Y(OGP00;RU3`fs{R=@3;2cqUPTpY%AZlbn_I<9J4d3(>l34`Qu%6sH^okv~P?()iiIxRiMk zM3S$O;<9+wjaB8Y*K$+GcOA|sqV35>;+h_0nXvf#+IF$=f*-D@43mD+Z(%0y+~Old zf~QpIe>-(8di|vu0c&QG2)+sb{q`A<)Kn&Ysj@OyPrLRz$Z7j)_f~l-O|IT+POqY2 zR%Pq!Gr#sPyf0S&g+^|bDFymd#!LLdJvor(NF%LABfSZlE)K*8eywx7qOpd2$#uMJ zlvs4R(H3Bn*q8A#I+Cj$LT$vx14QTxC6MKnuEZIi)ytvt)D&K4zTNYqI^-b{oHp@@Ne2I6{IqM({-I^g*^>!s0YJ zN17Cfrh$cAe^l_Tj^gxM^KXe)bQ7`N=yXZrrv`4b`3k8+MJw9<2(VnxU3JpL95nwy z-=?%^r^A!B)Eo+Z=EzVJgMoT>_ zc#$xjv>aqi{^TJv#HODS#hY>7vmXv%)vy3K~{T0qT^H?;Jx{{GxV$5=_jrRsv) zJGUN-9hv3$fcZ$=4*x~1u@9{d-D986ukTt+53phzv!V*%R+Bvzw@hc~P9d=yU-_gL zyjG!Zy-^2F*NplX+CSW$7Bh6o)UZyrXD<5HC+*gM{o+zV0H~X1l3thf=YjP^?o}!f z&)CtATHez~uNE+E)O@~~rAFR|o~dcKA89i~BDbTlKpXEL$uh8_YfaAGbOwu+#Tc27`X4Uq$Rr9Zb*-Yc zhJtr7#*fDQ^9my}7h`U27AzMVS^x`2#j(r;8hLLG4#pb3+z^WlCnq7sZ12IZAU0;U zgp~YzZz+dGfBgq^*ttX)k$7$27bs3fbFmtT%YG)678?33DV%(N(y$#anmEj@g;&IN znG}!hIy*S91qA{|Z1wkSW$rqMB4A>X_g^m@RnoHyxSb-E{00 z#U0B#Vavhn;?i@e57W++eIV%y9V?>~NQ*|Vm#xKU*e(1O8r~|%q<#cVS-{T? zD;W4hXfMYMCs*Oac+Yu^--j*q)cPu!zR|o=?zL9?zm){1V$>s_e*p>jpTPgD38=*( zIT);5lua{YPUnW2mm-laj@dxx0ux zyXeiox6gfWp91Z3!6~7OoO0y|c~fKgVu=?8%xVeBDi?hk_bTJ^=dHl;jrzbU zDdY}?aEv6Ui5QU2Iw7D#6JaH+&aEf9m#nV5PQT5;W}(Oj#DjLX`D$;O5yw4#rm14_ zPnJ*iL4;_K7VW%Dpj*9{NG~yfy#60Z8G`nCZ*;!2i^V4(e%$6g5HiC*RQ%%j;?tIz z+@<*qwO06b33g1OLk(|kaS1m*l_uNlvx0!`j%xiIXn~%%NQ~f3X8a_IRxc$ivsmWL zNbynOv3UH`aqp(Gn}lDS8~8q}_%;h53D(aSS%1&+Kbq|J67q8LO9=`_uemNZX$Y_N z33DpEYNnr2IFf5vsE22G)_l0-80E~#`krw+6y;ASP6Uy;&zr@nu&zw`2q~CDz$zeF zb^-*4x_j9tiQW>d8?I~ZLV5NKzxiz*xH?`Ek4XNBALr-3 zF4^2{td6X0Jnz_lu`(J6^a=jO%6MvGGj#TU%-G6^xVQXx38TDTz4-RFU*GWkkE93z zAC+kG1@kz@MCLb;Pb*I$9&#)wai0Cst95_>VRaC=yp}PKe=$D?(tbO)_&oIFBtHS= zqP?odnK&@5xj`#L@ZYTqyXUZGy!lY>`sONxUCy5Boyzh3Y2JtrW)YdNLd1~pj##g7z2ja+m2dZ(&2iiU zCQ2+#4QSc#zBm}ytnm0Nrp!xw&L+g1EmUDmmaN|Fp;NNhB$L%%TKiqgqAQL+OWxZP z;cW`|2W)={$RrQ>-1W%)!N9YD=tYT>+vs}Qh)%V{3DzzD-RTop4wONS zUKbDlA$j$8T7~gjd{)^(i6XSmI*HSF36-I`4$CJmw=jc>!QqYyN~Vb(yQ1T%1{DO` zLk3QcqpTX03Oc#l*cG4;j9!E+@{l1<9#>Wk?RuLIubvI&T=ig5n?IQVUBr(64X*(R zFXZw8l2p)s<}XI4xqv}Q3esfbsFpBiPfK|Eag%zhP1jMg2azgR#(+Kcwr1cSwBhp; zEZVH?;cmS5mHShLxm zvb@G6*ziC=6xRXW)N;5@tykpI4~f)^oZ0kqzwqjxUib22wg*-`Th$EkVr-;^kjQ%} z+Xc7&ZKFXG=tl&z9sQzXsQ)B}fT60*iJ2V1)R!UKQXdaq-I7M2w*23bJhrS<=bnk| zC_BB`Fs~!H4D&zmH|zGb9?K!A^!qHG??+;**4=U{$8nH7Ue`-%iwoO_oOL)8 z7^~I$ogOM6g4HCP!z-g7>hC_)XTUi^oee=npZ_{oFa+>-Qf?3T$@E1+t@1%C1<-{_lTc zihe^1bD^SocS*_Sz0}N-<^!C4R{EhYt8FAgrf#=8zvFH1^)X3E03b?Md%nE46csuq z!m{Y8|vTjG!XuXgLYxj^#ZK**eM(l6=4! z(AfNm`ep(RU2q4UgD;+PhrX@d18*vj80gMkA)Q9Uwp@})eof5+^cZKZ5^qec4-~u! z-!cwn>}Hj;*BakDu3sayOot~}7(fCQPW#K5%odLQi0Q_x9@}SilZM2~Mo?Z*sMvwO zrR|l+x==S!*u2jcZC9u|RY#ebA)X57QsZcoP%0tZEI>gxdqmf)2+zL{-3Dm#@#Kx% zJB}1DhYPMo=*Co-#IdOmU%TC%{oI_K;(TTOdkf88!L4edYR%?EZQ?$po};%#afuPg zr&0`3c)LTcoO(!y!C8j8L|0@C*XMlHLbFbtYhuj$p&%1TZ`GLeQ7y ztv`Dov=TB!%zQIbN$Yjl;3UdK-Yn znz)>9aIZKTAz9@JaxU-#^1<~Pw#TnnN}W1{zvjfG;y%f-o{E_c(8qd``)HkK{1%bO zaa^`70rCt$Hor%zlRUiD|FV=vE4!iJUA0gQk)Wt*I$w+HYzD;)L*EvWCIOF3`i@%-T!Y*J9Q_YGAb<`I(>J zmo`Xe`c3b0(`zX8v>X2Gx9dIVIRiZvD#~8$KZ=~3TE%d_7ED~Z21J-kKaG&fKUg3f z5~zyiD`hGTB3gVphQXWrv6n<#db%#JlQ2mN{TXtzJg8Nd0=7UNGRV%LM|&IQT8SKz z5=Rmlgr7E+=&B|+y1!i|fZm-gNQ~?d=L?;Ubtusnd9fX(IZO)m28NI1?+=`nwx)oK z)N=B=iK8S-d-|(1l=C~!O;KD-#jEe|8K8f!iv9wY*p5sE{>+19;@7S1s$b*Imj-Mf zdyB@)x!Z%6=PLc{=M3H!4C8M8u2{Bg_*;^MXWdO08x`~NRxhU#BVdJ@evV9>D!9;H z@xu;LH0LzF3R+_$9FzB1v!y`P$yf6!M<(`#hf@sbCppyBV<-0z5R2lVP2)eO4-O_$ z*8ejUs5CyAvKktl`G1k!J&Og~{@+>0OwiORRV_Ten-@zs#}U*-Fd!TasIrXGSQDBL zT|WIDdu=B{){rTKx^JNr!6fMYmh@J;HW#3aqsxxu3*>23K)DXPMCr-@R{p55*)Bn5 zS(;+Q20N5p#aI>J%Ca&!OC<+^COVej*hA9Oib2twUbw;_L0Vm_u!xh2cm*3A4|g87 zkFG^CA6T1`HO?@Ql_%D)%abt2@6%s@dNOCdUCfx8p{5bi`o97G&6dQi!F1~xIO1Rl zd;oj{;QcAhTUwpW9;LW+ zX3vQO`cbkQ{{iuTGn3|omIzhnGh2cSSQ6)SiK6AB-GC-a)2O9$ykykBmqAY?UPMm% z$nYX}ag?7`@G8VI#LfdTJ7I?4qAnm=5(lj)bO3UC5~LVW`w!&R?}aWuIM?5)G1YTLe1IwfX68iAn& zq#K4BLOMi5q>+$L0qKyTMd@acR0%0jnqfdh8Yz`_Na-A6FTC&PdGB}c{e92#m;Z2h ztZS{guIoI{UlGP)kL@@pjVolP582%B5QXVP^PU5Ribm@@^ahFCm%<{cn=x7Hzib+U zOG{b(QIxwcQyN#$SnrY;RZS9q?awpM38_qjYCuxtURtGFz8OLQAn%{cDW2WI8I>xHevQ&$i+H|xkIDX4*69-r zKfy%WWW6)zryGMrw#IItMv&stx}V~MPxmXA9z03|N1_9B!RQ{)O(x<9fnv3Q$7`dS z9@(XW!Z#PFQ^e7m!uI!XJYLbX9jK|T7DC+sVYqD5BiY_H&JhYyHdW-L-XGc4`ldIm zn+ez>gEzSC)3u!&E;{4OV3}ZpY+BwFy8bvfuwL;4l3=9K{TOyc+D14A)Mx?L`#in7 z(SBimD5-FD_kuz5xdp&SGJOvx18ruc=(u>^w`&*TWf%q}4EqVZ6(jS%l)~2t(Vj<# z8Ca{mkgOW=B@;9lREN8WKFiR?l{M zf{|rIYR+JLZtXq8!q}?s_VHHk!U& zALZ=_oNWYJGnyTJ>vZtN-nRH9s{P0avipE3p?Rf4vgxQdDe-s7C?4(|qKpw1-WiqSB3!D1 z=AmGzvb7738&@=pq9-D1&re&*U+Ge`@mqYc{GnH1))KnuxVu?$L9g~Iwxdi)AO>Kr zQkyyfg$-wrdU0!wdBnvTv?;Ipf*Rx+0l}odGZe(swK|5jaM{WNS;d9s9owERw3G{g zh{`61^^E0QRSqTLk<=LO+FJVaJGu2Ya@R1ff^P9AD#PTg^HC1e<0TTRFjs>4OV>8{ zmq#}b(~=CDeit9Vp4{E%Q!)dC49hQGnNTMm8|MXnJ9)G#>KbS<49zRXNVJARi_h~{ zGk#s+F3gbuSj2xJSMRn3aGuhYrZgyWgd&cC=zOI?|K80+0tTFiSaFk{x7FW9+E!+G z-(yLPlUj+^-**p2r(b_P>qWxbd)?g%RVH(iC~bno@1f^0p;fLm)JnQCWSgna<#9O` zi$&FRgm@6BkC*QY!ZV~A5}(x;BoXEji@SkXrhA2>`oHsH4VHL=gX0Sgbo)U{KR$-e zVRnAryo(daA}5-1M1RgaIY0Y>{KNgp41zqHasHtJdH+Vb9-JqA>W(!_8+3{gl7b*L z>Z1ildShtd_T<_P;G?_`-6WQMkx1Ou{d#XfvS85tfYt@bHrJPkO~?OG6v_xp{4YOa;3_##Ucu4>qRMT#=CrjNvTY$`Dy8)PDbQlf2+iZ!>^NIkUTNLGxc-oP7_dmeWGDGum7D z|EIJ4Mlzt2SjJm7D#ccK;K`B9(rIXG!yR-~%`z#iGs{X?Sq9k7(LZ@x3DWBpN!sf! zxU6}2RbpLDAUq3)K-8#VwZeW@ie#&+d_D?WOCjGKn7nN1L-D>B9K)7cH=wnm-QwoU z_qfbGuKXz&HiD9x*&FCn+OyQyBC7vts01>(0nz%jXN!khgWEErsIz7x|9H^~#vEs^ z^O)H(f~=A}mXN92y^l*wh_8m$JhD||xp0hcuG@2veKHUU5TX~^EDa*y+96}Uu_p1^ylGnko6JTLL1Ga)uo;&$Z(nA= z)U9jQ_u|Mm3#%h-4onr7<#R0fiJI))NLAO!(o-m+zFkalCPre;BoNpMzm9T)I62Q; z;D-$j8=9{EsMDvRc1D0IjNwo9mvQdvUdUxe4bYVO zImx^tAsd~doACQiTc%+!MPm*k=KR0~#pRUD5BM4o#{ow=n!qFOZoWQf)_bmNPr+A54-jMX$AjnQE5>Re*tY-<6EdC3}`VlMqi7c`LrsPz~jl?$DyeaDjhDbeU z89hBI*Qj6PPkQpCN|R}-ftkMULAiM$PcM-T{c`!xrfBvIX+7`BR&vU#CxS>nI6>r& zX)QBk@1lZKNjN@aoIcn-_U}a>x%NIrxlRgOq0l4ax;8KP8s#y=2QB8VAMVZsgRb1P zWBwS%kPs9;;^#OtvmJ$@3$W&aEB1;VVt*5R$RGiAnnJJOJPgfZZnu{rY?|I92%#vmtS4h^b*s4gKCPs3+L!maomgbZ;7qB|K%}Y#q~Mb2w6*;LegeKf2#Rv7!|VjK$XYjE>Gw z_I2B@PdTFMA1vMUu#b~R%Eo(|``IYQRq{A@#YdMhg$K}s?@!w2SupiWBHz_R=n6D1 z%sp738&${Dv-g8P4>1OZzIA`;$AU%=aWBm!e*TL}7jY%KsRxmo4W8M3rAWf|gAjES zlPE0Pdo4H@V)dx>1{I}fN1Bw|c0gBhl*L{z^oPh`iCK+H7j`O*Zk$9 zDgSe_G|LW_RjD?`-dz@9NGtG`avAY8=O6w^?sAtn+;0*)>Aol)CX~zh&A9zzr8+x^ zWhb}fI6S$h$&0^HaAwAn{zr^A$Uw`rHv!r-`fSl+4-?kzuC;_?zNO3jC1LEhirv=! z&+|{U7{_77NXEkL5~Szl-ql;gMF&>ZQ600Y-)5ta4lV52hRj5-_ufPOf^!@+k79)P z31fluoNPY#;%O@QkI+2n-$L^ioql55U*Z2jXdd+62+d#J0juMNshzYWz8~#VbXi-E z8ekL)dGNz{_{4hV!2qs~N^Gu~v}FA>V|tItCYKL%RY;4Do_01x_(%uwrZr3|e2NBt z;_izYaL=IUbj7wA4P}N{hy0x&mh0-V8grG8o=f~kn~J`Q2_GL-j6CCiZ?YL(NJv1s z_*5Cq)@GZWeKXR0t;J>kBs@ruIJ-84c)xZVDNMj5mF(~`Oz&d+OGkLpT7Yl<@6WAt z3G)HPdW&-K5Y7;a)BM{FcnDtUz<|8=A(VEGYY3X;aqF2~_jYbTX!mqN=K#B&r*^O= zEuB3-B)OE%_K5u2bj|ceU$g4(cM^_50k^Y0r=BZU@Z&bJ+dfzMOp(^_R(wg0qeU~y zh3$!J9ToWXK9@eXxNGe?fsx{KLgty$m>Afe2<`GcGYX?Ug%|AQ&hwECgpCCZ3 zPzBn?!7A<9q3Z#!aw0wxWwh%NVDC*T4*NyMV6r4;_v?T4vZ~Tu;Ww@2(+2oOe5n1v z0gq)xQ1H^Dh#3Xb%qimUT8Pgao8!j^jxmwDpJKHFa4vWL91dXH@l}fQv z;sqDVq~+qEo(B-KeH#~@dI7vyyfullVV_&uS$+5OjYq0MZ886#{#9;sLlgkyQN>|L zT5lz2W-k_&+Qg0~x6VPNm^H4XE|xogudX>w*!Kf6(enNqfRD(f+YiWCDHS}YIeBWk ztrXMu5F64AQI*!Eu81;*+*8f4ie;_X;2C2QTjN98Bjy=5hC9fk`zBAaD4BIqeef=# zsHy(9Xr}w|&SFI_B|C!we~;pRA3y4BO+6<-hUjVX!m^7xb~=;%xDxf7`x&o8_5%8_ z=XVfTq;%(h_r1QR&Xy)f@K1#)!5>c`jAo)Y94G@Z*v&(RD?hiG9^!n;As~PZ?s->Vcjo7a8(To10gA+MWd6%CsYl8$T{mF#+Au`&_>j1m5BepjNc-jwUryz6;23?afA z6W)u`%$cXl#>EgX#+~6-2*LN3GihG-W7{ru)al3M8wCJ5~p(KbW zCaL^qv14~L10MgI{a2N?DMFMdMa4OnZfh`J&I(RTVUA9>9r!4bA5&{YTP)|fOz05^ zZ$i{Fk%vS%s-%=0E01D&s6kz#d(s3c%99|#kKje ztue*b96h|U?q;7##YtrvNXS`yq*-X}ofZE91)PWem1O8GA$!>y>Gf&Q;qbz-!Y(Y0 z1MFQXW%j%Tf2PGl>hs9K5hyb4WnzYmI4X0^5NLMmJKZHDZoGFmR}OMr0LUoB*Vb&b z_2Q1|!_X838yRN{b){aOCttKREq*Wy|9Yi$Wxp_3EC8@aOl}@nj;!e40BY)ya+;aVB@!(F$x}tWEd%aSxMu_qvUmk?u(Oz3n z{_v%L!bUh;h76}dHx6l;wEM7EBw-JHQ_uS24ZuNkwaPG&PPDp@;A2N4!Ycf0U($#C zrSlTxJ|gkU9i?OAlstQvNEE+dy}DxtGK55Q-X=^<4J~n+>e&(MS$(w<>hD(XAbX?- z2p8w4n}$q|nH5Z#<$Rv{`W;4|`Q8~S`1HX1Q((i-kj*twV6W11eS+kR2(-UDU`ra* zAMcwNtj1r|7%+$v0-H?J67f{>fz=~yLXM8GKh}clKq%2#7<1@3 zdPu#xijYxI$7BOXDZS5IDJGJ~1UA97Iwcgwt^g{w2_QIHupAE<31}gV6@?4?yqy|S zr0gv>fvQKUfQ_Y-!`Xf_%HG$WTY3;RNO>8f#0**bEDEz`xr`h6S$zCcL1vaNlFT|8 zEMd14$ACKxiL8qYLRa5MCQcC~np*6z)Z=^2u^*d=JW($X73IYoxen$VaD<>PKhxEj z{YUcO^Uni4f7Cf+&rzfXYyrzp%l=<&o3z-utq-l=Ku4bxa)UDnwgZB5!Xk+fs*4-o z*JtpQ3ZneLMjqr#cj^4zXRM3NAJmL|X3nX)_;GkWDArB-L46fkSXcXhZn%d?-A9)m zb)wfa_8;LQ_R}MZcd2D;WLTyiu^m^hZ)qgi(KagCY8SMryOcS0*q5ERTb_pAznZ)H z)cn=%3b-0j+9;rjD!^k9NZ9$s1esCb9h|iu*fg-q&@{PI_?LjDI(E__9CsnLV)wf` zGZRAj?(WFMLJHQyhyxrDM029-nNJ25mgUF0Fr|CK%H?TTDp7Yg#l%yJoxCqf9D1&J zct5db|K<3_N$_-4k-ly-m4Fp%_Ej+CNgoaU2|QAk6ZjF*&Cmk~FG zga&X4{2AeTs!N4-S2xjV1$uyr@v63FagCpqHU_u^MdkJmFcOq^K)SIz@DzIfUtt}0 z)$u&>G#3Ft?eG(Y_Z0km|Ni5GzF`PwZ(TKGUxs3T1!?Uo_h6p0CK$NOVWRekYj5p)5 zm^TBcZa_!~$2IYgNTO5@8TO-+Dn*t|nxQ4ibvSb+;)tmIYQ$t- zl5)L2wmlmHkA^6HP@7Di?OT98VKSi9({#e$3n+wB9&N~D8Qj*C?`XU~J9(O0<~Y$d zc7`{?q04TQe$z$6Xy>!acWz~7#_n&++?0kl#cv(kzH&9N=#p?8@ao(SJ-A6dLlS%* zttbZsNR!O!M08zkJk9A^zdC4lcc0b&NRYS*+#NS!V};9=F0iMWL$!|jtl$Lp(?fH> zS!A{qkMV7_GQ;I3`8F)R+u~30qn+3=tA{ACahf*v&|uLU?EoK|Jh%)SGM=T}h{eqQ zbXdN|nLz)h9H_S6HM7ySJo*u0+YoYjaQS4eHon*#l?g;UMPE#K>zP-6YkOO%_aBLN zqOJJ$wHmq8QEJ$HXc7i|?a%SeSx$;ChWOFW67k8wJ)5;;45H8@ollV$ucn>> zl^Hu3d&ZEG5W|A%Sj#wnsTh-q85s7EpuHd6EPMpEU5S_Yvb{9OMZ;!74le91gZy(3mx2-#ajez5ZQ zJm{tqmA=NFL}mLN)GX>G95wv2^QX106*|8_vxUO@TGwTLi_MkYz=7fi6+766S88nL z*dPjQeVbcO?GSj0461Q7d1W6DtqI#y1|bZFSDHU0ANiKZF3Ck%*VB-|tlw{42#*og zQcGEAnkwgwSEH3EzmA-4#&1iPY2I!fB5K?G2Q;O2!}2c|3r+{G&(*lR%-5E3O5Re%|n>b;KC&z7~-wK?_- zeanB|(Zu18-$)`wa69#6zPAkgS$aI#&>_HMZc1BO0G`YZ<0>+p|MD|vD-9Tt!WB8! z??IEoApjK<+PItj0Narsa>9h+ zwk^f|h&`hm#iNCg1rbOmO>tYN5l!4>-81asADh-X0P%f_LV@{1w5WM;?#!k%9#5*% zU1o%y+0{?nC=kS{`aSY=M4q)PUjsw*klac0e|Jew+FkL!(CrBHirmB`I>4Xh zJGXANJLFr;u%@ob{OQ44(3(Ktt$KzPVS$l*LsEq+Qk=2V#NM?tA!g7N4Ks@bDVvB| z$V-y0sftgj>d0o1f0gTW?88(DXlEmhfU*m0b6nUf;Rqzn&OiM6jF@9dyfC2LjV5KC zF@^pxwZ$uh7{4}c-Thf8(^7U7+DMTR&DLly@Vuv(QrnoKg3B-9ObE-bfbb6zsa~vtqhh4lKAEPke3`_UO1IR%qGSfWg#MD!14VmP zqRSLKKf!}i_s*`EEVe}`z@wa8tQZuGEo;7|RFz_N<@a{Vt8 zS@F4Lba{K$`crpQUFuhQSl>tJ;`Gw_7U8B;qnXt1&d5j(rU4q-?s>xISS_pGslYkd zCK3J~C(H}f$w?;{+Y6atNp@m=E_0G&jeK>jpI5)u&&&ML&&%6o+;+A4;yIk^8i!DE z5}X(H|7tn$)wi-;Cy1kLN-xyY8(iG2M#;IN9cU+pz;t5)h4~sgM`Xq>j)}#jSVHVs)wFxm9r3m*at9g z31z3?UxHGa3@U(vMy>Zp$D;`JGOXcB5`zh;jo~+mBUo#z?Uv|?3*ptSu+G|hp|ks7 zP@EnxYkz&Cm(s*Xcb1jvVE5gLOi;ce^-Z}Uijae?Kv|Mbc+DAqIfcTT{SN3TKk1aT z1plZ0aHjY8r??FQc9_j-LN4WJ9E5>k*NX+@>c4DeE-e-x(E|dtxG8-DG$MBDE-etS z@hH3Wk`xasmIM~WD{?cOorFB=t#sM+wL#r~b*= zAP(_TQyN(kvgx?zoLD|IK^em{`|DsuS;2p?G04Y1WKPcU^(~i zjKK$ua&R!6$+hi+X-u0*8=q!w0dEq8zRqPSAr0BEna2nIQ`Yp+@B_9XE8Z15344QD z|0fAqvWo}$0*#|h*d5Iup=!FGtqk%{P8>ffV0_7jJJ+(aGuRlAfaX7o940<$)yoCi z118DUs<;r=$JICb6=y>q)*!8V(^ ztjCZpvcro#NrgAtjAbCvVU85_dA`G|B2^F6R_e5Rwkq4K&j1_Kf?SgKEs3&yuV+y{ zEaq$RF2MW0!!VVA8~ffUHugM?*=Vs)Q@dFuR>-QWt(2AAyx1Y^gXN@WyOe)11_yH} z$8d0up77jAH=br2*QJhP&%toDD)ZY}r5?DIkllxhW zq)$D4pNCPDZ^k04Bg0ug zTOnp>;4!batzSgBlBIhkND$$2omcHKezD>}vx$jNs$2}%6hR4W)|!xKJ{A?w*mRfu z7KYc>IoKxoIs1pV7B571<%)s>p$LO!?#QZj%N{>mbng(J%`?cEz9%bJ|N zq95z|KM8Ay6Uf;4ZUStX!tjx@&6@#sX{b*AC?i%D`hd?fg`V?He)jadfVd`0e2>^i zgg@7>Zrb4djVp8B-P&X^mDkr|n(EpMy1HXlAqdm$(OiV1?hG|i>=UzPU)seRNm8QG za}P=&z#p~{)v1KdSx1@82*W}QW7dmxB5O!;dmE9X3Hc@wJcmtRtzx&0x5{`*0e|E4 zS*nwF83h6Ff2Mof29Rd@m23AtK#5;ByV+lVk*mOwAwemTYJ}^dzuN%V)v1!vr;V1c z*ZW^gWKofLDaUJBsk|Tbqa6J)zRbOzD@PY7HdHCym z(?1LR%LFAhpuqRb0fJGoi~AtbHpW)3qu|a8v%8NLf|yX5cmJCkIl(k&=h;yTK%|hc z#sFGKB|b$JII9boxBnv%6L&@}ObylxUDg;&fPLk06XAru^nL;P{&LcMY+3ZXCLN=!Ih-Vx4`J|20RfLHXZAT)+q?VOsvzL%GM}%Ec^EmCgr4#g`*3nvfZu(O(j{U2Elcc0N zpzr+hpG{^nd(=aQp`)3*DTz}dz$bt&!k8xNpIYVg8SI7Hhg^1S0oE&&)V@{g@#laY zP17a9oK+3%)L*BeuR1pj$%Mahyp`Qnz^)m<@?B*c_iHh)hYOSct@)5Z3K#Upx}6*) z2hTH*DD|)Va%tgw=W@T$9nwgr$I|>3gRmr>gp=w!nEebtH4N3%@_F$hf|kXU0S>QRs;Z#C}2@n)L6Ye|=J4WN|bAH4vft z1ilnY-X_)3X#%GWT-EFuGM%m0s|6o}?0&0=kBm3ERKMp;feWzNixybAMMJR0!R8cB;ZKvfo16BAHyyv~MRF%sZypa7UW8af* zjN%UujZ($w#hVx14;smLKa^%8mnf^tHcLHjFM5x9+N}4#-nkx`LjX&|+D-8j=5taU z{Kw!0>QBkg!f{<;fKc~RA+Cg!IQ)cST4Bs+?ad8hd9%+7I*a>$IHceEEFS{qTLA(8 zb4YlrxhMTiFB8n%z%S;=-mzub_kM9j-I;m;zj;n4x;I0MUJ|l@@FH2Nnu*u0I+&`K z3ZHG(-fVb!Bt(-bb3qOvG<7|DqH)bR=?y(WyEZ3f|0XQC2qXv1sjtz~HFHApyQt|% zFkv9G5_)0#kzuTIO~xq$YO$$OEA$j!it$v&riJg*X%;lLpWt}X@TtyF1*T5#*dVyj z0ef)ba74i)X}xdAVa{s6rAS`+6GvRwGQ;a?oM4wn)sN@iKRy~e?o{x+RijWKdFO;1 zu^Avy=r%!hVSXSAI@$=xF8uv~RuyyV!UIGmG^uWWNigOAZ+NditpBEkwFxoMt1CIB zA`Ohh4HrYybZwFMneI*mM0k%kFSx&DSEl>du>M?eUxoQ}VS!~5xcP1U2qM|ua!kW$ zxN-{F6~(e#a$IE~>j^xX9Pzc^3zCL@iO-cMrwuws8VjchwQhy@fc?LQBxS6dpw-a& zCQ(UvZ86x)h{ey$z-YcL4)neF*rGt_XQnDvr;)+j)FZQ)%l3;&twXE|E5^{SZK$%c zHZj;*B5qx9nrDl&D&yq#2ercndG3(s7xh|Fr4zop%uL1P>#8pEawH*|ZP;`^amTnA z0$cld7cuf&#oylb(^4KG74jV+=g+^{u0Cl`z$IP(W%a7m&nOCw_8^ht2t3scG|B;5@L@?KbVCok}NwemoCw_q&#=AfXV zKTeL$*s|AFHRL}4Mz$}yJ5yCzx#S#Q)PRyVdtQz?8KFuGRxJy&x?$atu^G_A>g%V-ECnxRz z0(42@*lZH$8l2S!>{hIm_vtma*OjJ zEzIVRFF*mZgFKJImIgFUF_NeMo?VHXS-9?QJrAfSQesDXgwSeZ*EBm{^emUol!Z_? z49-8%iA82$jo?5`Nz&EH)}J!LC6Wp{(y&Mg8}UdHD$My)3N%kB1n9W_7-$1l;9vtoHKkS0+}CH#_SkmunhwTqm3 zi#iKdaDmaJ0XL))VH^&B>mST3q60ju=rgK`s$WOsDm$gdb;c$6VTlP7LE7 z2sY$Im40^!ZKB!}UCuo|dTh_|$Nkpa(MsuY-?Bpq?AhS_t5PRm#^?8l<;usMUQy)b)9M&ls`(Aldb|*x9*V#EMd}=hhMlZ_ zw7lGXO_k2(g2Z>wUmEE4LtAj^YIQ>cD3L%Os#jaZvAvJSJdYl~QbhTtqML*cRxFjVm2770+Sn2}NEtTJ9*F zyp|g))B6xC!lsMxm*g$yvTHt^rs8Bb-&ZQlP-=b6>odn+|VGcp9LasB#J zG-sZI9yaQru^@^xNiQ`2ENw2NPea)IRp_to<|GB-sXT(<3l8yc#G^DVa&}7CFGe-^ zXx0}bQRKn%3G(UOre5H9>@PJ== zQvcwVZ&Ff25vDxJA9}cQkvoJ%8WQj7__2++YOMJYpTC8?_xTmhPpadubwQ5pyZkTa zo?gCP^nU*ijSl)Z#%NASN%xsjQ=aK>CO6B;(Ncxtq(DXN+_nX z5<16YQuWS+@v4&X$aum`Z(#5zM%z6+;1P#g{(SE%V+VYNd~JvLfUMIZPTB{96D~B2 zm^cwJ-Qt?&@+ry8qW7C^v4g@mYG&(XK*Gc0{V)GCCG!`4U_i2{h-Zt1#Hv*>h&StnXZrL6g(qyYU)ezTRqQ{ zHF|PjZy}@>F#Pv+w_;Q%4Yw)$IqHDBo8@acG1Pj{yn=~<4*3VqqCXdcBXt7{0(D!5 z{1pb>88+j#Ws8UIACCahh3+lxmm$k&{$O{=Nc+N7>U#hr`3`_2AzoS2{|8%Nu}<3O zg0>aFKW5KefWq6+>VVh2@dar@u9fRfS!`j2(Hf;ho|;Ku{;y0*)bTbCEHn}&h==be@h3{BULC|toC*4} zz8_60aw`#GaM=9<)>%`Uszxi8k7L-tMziqfTw2<_uTIeHd6|apY{T50eBP|8AyJj} zI)4hNdvM5${X55Op>8F|UxW9rT&YU7b?~l^{y~tcZUsobG^SqJp^faWXtvbvz|;h4jUsIsHf@l5g5elj9l6Sxu=g?kqv?!gxi z$AV9_W09}j5TZH57rdwY{GHM=1?46PS=CweT*fFS>39{f;oaTd`VV2y`K?HG_*?tH z0pCF*)r4}f@S?R`DF$TY5mm+QNISd-lROdP>K!D5OF>&EUwF)mENcToWkG*ytPVr`<2Eyv&ybUur3x zw_45(1KpY!>ccPkS+XA{c=U&Ih4+B|r5yDi%GDFVV(l-=)qgH$1|aO1KZ_RKGXYL* zL4$e+@&RR)Ras-^Vb1rgF^yQ@6&sF<(!qV&cS_20weL`$P_3&Ew~KEGNra<|t4`uOzTtRN%HZLl_P+y4zRRP;{tt*z zX{+KRS_3nXzOhv7vsQCDY)oTLN@isQ#Q+&7c@htOHYN2wqx;9QrHOe@vV*|qT86IZF$#c zeE>UyGC?xdgTztOQR`2($(2u**>0*J!`Q)Lca@+mK~Y_547=r!h7L=4_bG3J({qje zMiJs0aY7!}fP_`^k}ciSK*i^q0qu>Bqr9IJgr#mH3!Ov4Ja2>SA-}}CDbfjI9k2^Z z2ojAyGMqBat)Yh;%(6`ZT+ZNH+N3n6Jofal?0_Gm2~V#0NMr5sRB~4m_tvR!WGfO$ZPAkTp(2XOq|e)4)43vR%cFu$5R zRg1W@Rkl>bvKtiKLgCx9Jv zR)uZ##TaN>4$bJR9_=c_Cmff%-^a-DiQg9mlA+gFV1i88vgdBxl*ajJkr;U7O!*v* zWWk!8r;ws(e>oICT+{oL9>xaFI~NDENi1}#a)H|y#dV3o^e!~A@$F58*hbUU9Yd@( zH3boQ>T|3tQD42@E=PvVg`6iRQJI$1LxWvdD1DbI8~6_>HsGaE)=Ya6!i43 z*##d2kd8L7pLVzRd#?x3?hZ~~x4RApLaHJh0PeQOh z{zb4JtEb6eS1h~{CvL7)YcJ%xSP|M%$Cn~Rbx+HpTeoM)6LB&UThYly~8z}(Zx<>i>f zy3%frWxp(f{Ez2~)bL#c(?_Ki69#9Sh=Qm_%#0pz31#7X%e#hhm)8~KgDw*) zrI-2U!!T};JYtpdeZ&p19q_RLQNz(9W?mqB=z6U5-QeO8H%P^58&;wYPdGU!{$dsq z)=4dci^|*@WJjo@+B{ErOt6ffe_#iMVfwJ?gwd~ z^a4;Y)vHj4%dGn_WFrt~l=vxJwb;9?ak#05?D8-1WBdyeN=GY@Jj96MShZwI;@v+v zF^;kS>YP(qP?=xJr5yu5BBS{SAHNrpTEluG-x^emoBSY$9X9J?nTpgxnyn*`J>^K= zBedox4*YMzGGAKq#WtDyoc4lG13n?Qz`zgwRtL0ZcGM;HB@fRI3z(}oaUrM1`ur~M zSAr0nP&TvPBkt%%Z70^^cjhSJb0^*IloZA9)H=zlj2HK5|12x`kE8ZSI3l#(bB5hj zqMd5z=GpJw&Q}litm5;_)^ZKyb(Hu~{CqTePeCh%*Qa$q5*4-zR+>?y)9(%=2+b!^ zx6St+2hCrK(R^gJfl2p#NSE287AuS_?727Y7@L;_UPgP(klUhgYr~W3k@&=PPfmJO z6Dc2o9^yA2y`Ni)|Ec?0+wR~eQglVhMj zBA&(5qVv8-#g4@CK%m?2yS9=02O(4HwxwF-tRh`b0PT@wlM&PXQ}K=22&F#IXXPY)D z<((KKdF>v7Sedv&RsT)}6gs+bsD*di7Iis#1LR^37_t)PxL^jqC;*YdF`wJ~CRg(qxn~I>5bAx$FlIQa8$*3V6kwAF`AugUH!i zJk|2GW~rf+a1u!{h5cWdh2I@L+)^9(HYR3hjSr_yj1N!Mn!Q|GXHHCh)Kpjg47Bk( z`solzx`~2#`cn6(m4$F4`rH&FBaN-_$;eAHdLH$O>Gpk1+h=DKy>oQ4J2Ht1(Wgrg zM?)qP%gNSz>E&taHy0Ha-cf7jEW|HzMAdDt(fISG`N#KOh>35f7izCz$e~Cac-f7> z9kb`bqEa1=N9^{HMngg?jEo*`PHwNn7Veq&0Ai_SsyAhd0VBKn=!f2+SjtB15KC-h zq$@8o0fILmIv@`qownNN%rz^URzs(EWF3Cac}Um_?e`fm85NAem|{QUdq@SVTXThD z63i6H`H~n^&!B?nRe1(c!QqZoqk+j6Iq^*9uEQF;siJinf2o9s%FI)YzTj4`BNHc~>#u${(NyeT27inRA@fpV>*1i@$$f&P zw_@giy|g*qSLVQR-hWtXO;dhOp?u4+Jm*Wjc@lP(BD#Owlt@1>q!)Wtl?1!RTBqKWpkMLd4 zUnec-TW6w(?jdv^8{N=m1wc?oe%PSV{gHIrl<*~1e*rpt!v`%86<-}W3aR8^>A-uw zznsgfeG-q>+BzhL5FdTWk!M=c!%_PQbaiz9jV2t$PkW+>(X!QMoN5E!D%t9g!@Dr- z7l!%zUbm7-52=W6v(-7NsXZt1gXrDFe&YbiIQc*c(h9^Rb)G6Q}5*gDt3S|q-t zR-w8S{&Q0r8f7_Gv({Q-H7hZBuIF#5?k7iLuP@2Hs2h>L1O_lO(j)N~Dbzaab_A=5>Z7^*r!|ALMx|Ndf%`FrEyX@qT z#J>OtK>82s%_D=!1>%D3bvXkF1M%#zM)Y@p`dLpq{38KY4AaxSX-{N1% z(pc)WPj86DqfRt=8+?ts$C z&3(C&B^a(^v;0S-7MlY~99}NW9m}A=#J(m{oii`vmF?kH5X4qEvAgap^HP))O)nfD zMZk2OG_-#l;S!^(p7g=00D(^p>Tn)3xQ8`M?fZ~b-4AC{G?9SOE(h_E+DZRo6$M!S z@KU6uSIS?6{Ew1VvFz{2WbI;WnMC1u^2UDmwsY0bCVg&?hlcIPrZ2UoE)#^!%k>cR zHyTV>&q`M#cNB8VE_AjcUsA-ovUjkcCS8}0h$cVNR$5$o&7ElP%74B>Ip7QeS>hoL z#6ODfHRWp^C!uRC9Se@Up~12d7Uj581w+oZqsJR_6r%3`&G{4GSp_dEVS>~iM5koS zRZgXIM-eD8Edas2$?R<|Z@Tewd&SRJGS^Kw;x$|J-s)8w>&ca(jm=XYDEKZf0UM8o z*(FR(Ryx|&_NLh?l|k6aXI4D)7-ea3m*4OD7xyDCsC~gT(ggAdEEVS5NHR(DNy1jz z(**F19l+2T!x=#<_Mz67Kp(DrMe#JK{my2$q!2jh;OE!#0TlmjfR9JOJ0YFEWz#!l zm!tEh_)EzB&jQvMQPe@SlJyKVeGpYA-3h}CORagQ)g6rVphO%0=yJECU=O{=wfD(S zC5{)f>?bDc$y-9_Hn|hMjX|8QQmQ{kt6uUD*P4qH*Y6($D4n-J@QPM1pIj|Wo+eD| zF>jWcqw4miN7To*RnHYh4t2EmLM|}Yzf%5_AL@XOkoRtVs_g4~+6uW2NPZb$FdKEd zKL>~;5Oh4(EVRo><7K;ZJEo&c9yYt^HqM4>CO_Du7Dx87Rr{Ns-KaVIL&Ql6NM6{B z$r<@{ZK9Xx1K@HlZ#XnyPZq3-Rrti<)AnOT;5`-q&JVA-ptmh0hVqi*uzkngVhExG zmjA0;$})Zg;)0@=Uoy-l>wQQDcI0(g;+wdiGJIC1@YZdAgws-nyf%*((CltEIqk&D zEIM!lXj{cI9|29dHO%35j49zMxbuknS9vcvfQpo%OViX?xYewz4biaLCpX5@$6n0W;M z_0K*y}woZ&&J1HJM8G>^8l+_?r4$g5?rwe?pE#cP{hV_i{(}9Pz4l_=>;B%?)xXi# zzwY!tt!9ipc17$KR?!y}R9hmeK;XqY!L%TCgc(d;@b+Cir92Ibd23_;$gqw7yi)!+ zbNjd+aqb6nMo-K)kx}eVP}}H4l~Bk@D%}-{z6+)4oNbZ(5L-wmrX!@|_3&$YYg7c>MR~}s1cCv+Oq*nBVz(Q4N6Ql-9&Y6 zp2kd2jEgOo)tC=GUNNe0Mr-tW{VHThB~!&A5|Uo4E%#D`Z4w4RYSjjdbDpz|3`OGUD9yW{^0TrIijGR{`M98rOx#peAa8YpQtXZl>kvS7>sPK(T2)I&>I$%iF{!q(L$o1e_z$ zU~pJ=?wDlibBaePUWi8t?0K$}E_o}_gREH()^7H%(4V>1joA$)Oj=UG?b=SVy|gv; z*4ud^Bu#^?`r_A-eCs!+C!_0r{E>}3D~VT2Xx`&KKmSPJA!k?rgVJR~HDqt3axI7g z>@uEM*L*=t(Aj8V+D^NIfXcT~sv~{A*^;oc(L}lwp9AAIcZc&k2&Jzg#mh@^9fvgo zC)h%~x9XpeKuEPl&0oq)vIL#TjS_pfvk5i_yo;0xY z0Z`nBFMTLT8O}U;hbsDZtAUFe-zn<7$l`J2!M^2LOd=f-pH%~Dk$GN*Lotn#ppp3l zLs)zER7pp7En+_#OfFPiRh*^uU^~Hn^cu3xwniI)%((5-`?P^_XVW5m{tmSqmUelt zV(D!29`{-_mSNe_{{%gKZdn`Zw&VE|yL1t*)cqUBN6>Kdi}_r{e{C4vU>yG^B!mat zkEJ)bdY0Y>vYF@kev<7tF?%T{Fs~}n9p?LK2iQ%-f9ko`+Ox9pUhj>e}K>9mSe~wc!kC!(7Anzc-W0K=!%K5sfz;l*U#5$U~5hvwYk$1!gf^+R{oRuv$Ba!T;PyC1dSoD?>oG2+2e2#!Ax9K=oNIedEZ1)l^>Xt zr3<(}MXenC|2!=zKR=^r#!vGWlRY^uqi281f#Kh(er*KixIDtCBoN3lt}71rp#nYA zFbK%xYr3qce+=12#aPRMmheVv*7zh#@Q-Om8P-RU8I<8ZPG0K}mK?1qsqyR@Dea7e z2}^3{-BDY_gORBDuVwTs*!g1Ym9OpFE|KZi@{Bl=Z+wl-Ik_d3T{ii9GV`6!uViNO z;a}rcJ(Of{RWsn8u=Th33i)0sr2raJIhvkCAowlT))St#hp2{yi&@_TRiTwz(yXij^`lO(#jKq;ZLguE#BjyC)4scG^Y;GrPl)F~3Ikw^e=?p0 zL_97wWMIhTKyzcg{UoTE{ksBt+?={*SdcFFYzQ_sNT2b6OOPb8E;3ji&KAlWkbyz^$f0y-h7zhTpst33hyA4|NREgU3^u zvMLgBUROga)%}r$pA_|aI2RCNBup|Bn}wHc&C7U;`RXNAgAwg|lH#A$XguZUUGv73 zd?8g<&=;XJBKodhy+8VUH)CsQfA#*lp6*O68xl#hB})9yg33C-qYYS&z!_Mv0djVl z=!7bV`|HHemPY1*2{bh$C(-G(emFPa21^k5?MMB5QIOP62>f2aqHHzpx5n3Wmod0^ zQE50U8W`(agvo?pBe1IOo3)w&Hi6h!EU#MID|Y#%YWR0vdBodjEYW8*@a=?0m&KK|N&$b^eQDFWw^%Knd zgBY_%vhCo>*Vkg!sdQsb8%{oBF+cmbVZ;HvWN8izMhV)7us zf92y9>fGy@kJA%|9o46<+R4aLwHHJLVuB7v3D(uHmxi*`&0+Q|gEn~IB9@WYI!NK} z0hedRnYXb$hT}FO1;w>_rUIjzJU_dc$rEC6-%Zn21;k!@C)C+-sSVCb`mT`>Rd~PY zDuP0kETF0N=qatLrSla@Ez~|uuEEg15~1#ZJ3O@9HCM!XWW`UUtf&1mZxVxC5|bYvz^S-op;~$q5#mXBl!c%=m<{j!-#VZiiB+K6dxu0lzC~_ zC}PGRvf3uqim+hHQ@tIA``k*E-x2lC?@&J6h-b8=JkU#z_a0zvuG%tDV0m-xYay18 zHDbZ{=e&KQ~;A{y^5crnS8kcN}^L@H;flSRVK#({KNSNdN?s8 zfIa8Qw=-VE!+pd|j%v1xVl+2qDWFekLzqU>Us2>iu&J?D!&swt0nGY3>2EeD%V5=; zf7zgV%7ZlfNAm|S!EcrcGZl)(^)U5U@RJk87L9Pv&o8*Hm3}`gTGn=FFf6m|TENQ%J?TXddD&o^?)*pmG*FnJW`7Y< znp+r5(<~R#i-j=r=o3L6#*{S8h24$@uWl}?B~dqP;j-_`zIHxa>Bp?x9F(SmW80b0trUczW41N^;_)i`$kJUP&M_Z>C$#k_yFW!LfR;4w zt<-5=u(>2Js`pM1XUpz=5U=V-{u%>v@~BZ(TQaXBfb6pJK_vnP3OlOQDu_B1uJZb-bi*+z0qWL z*AKxnwlw3WVEbjeeg9jqZ(b7L!Q<_^yWtToV@!{`gr_C(tFBX zmxe~a4iN0o5GjqU4X$NKyo9OseD1vzxpc_~Fe{h=Kzo`CA#9UwxKM6|0#TO0Rs}h6 z$xwWjOJ-XrBeSMw>?pP(j*%DcW81}?#`NHcV&!waCxA$O0iT@=<4!+~ysJS=Bibh3JidlS5GGF7l{?LP?Jawe3`3h8#aO!L z9v!C^VWR>&2DyV(sr!L;*=xo`#(Y?M%6{kZlnLfzDOOyW?GYypoje*2B@=t0;ce= zjII72NJtP#7CE#RK!`6ePQnPjofL5xW9JY9Knv9+tocR^6FpmDZkuIJ$;`nK&|VL7 zZ&B~g-y@pLqQdve<>9voh3UVU>EOAN9H#{dlkz{+*i2CX+CbcUWX5N$=qK6y*d$dayVLmU4B0i^-3 zhl4A$7iSc2Vqf<6icsI|TU?k6h(b0;U@m7XfA|vhFXA}e56S?lcLA$VNlsM~xWVTb z<+u9Igt3`p(RE@Ul}Y<|J)`DUbD2Wx6RIZY{7G9&G$EL{1$1`{Jv4#ttF7waY>X>h@vHe7AxyN^$eA))G zqYt8QAiN*$Jfh;%36qXTm;+CL@f-j!P6VkcL%$1_#6{obf{Ks`MwNp#icd-0v85Ty zG@mr?)i7%oK8V_sjyh6pr*p?5EY%hPbFCBh6YrAWngD-BGW)}Ykz23uV zl8?B2WqS$H%l$NW%eeE2LVQtq=ndAoCtgLkOqO&1KpfTm{3ILr?Pb&?EWJgoZNQ5+ zTW!g{jSaEY>t5@CQeS$N-$1$(Lhl(~?6R<6Eu<60uS2>z12hvxF&W3ZzEL+h?nNHu z24%)V7v5g8<

jpbhu{*1qnJXfqXPFxS#ZdMPVvnl=ue)FO1Brl%$BNxiY7w|`|T#} zzUh{C3W98=(uY2~E&J{eTy3>e=;0LJ{<3F8_C}z@Zdk*k5%j$EHZ!gkuJAPa?n`C% zPr9FcQK_zy%zAPPrmo@+Gtk*M>fG>{?p@8{umKX+f8o>_M6FH!a{+SG4VBzf9^(!c z2VX!bTBK2g` zY9q`#98E=&wMT$S^FJmyPI~xa9591?x#WnLUDj}nb(uO1cbR-bOimrW{Q#Xr7%`V3 zDr48ufruMf#>9%uh*BG8T<;c4FK_Gqjh24i{EL?U-3%a70KhAvyg4dft$rolzPR(C zUUg~{j``C}Hw9ml1dhoLEL(Nm#NCOQr<27eJPg2_>&CqxQ;;b|b0$@r|j>k%t^B>4CVu4C-Y5WR_OEMg>hwWwO4Sh@%q0$n>jOlKzP zG~a31%|<@Q(L>b+KB0+e;E`MK9WODNs{Y0~;?(&#W!#nRL6%)@?Zlla5eS)61D(Os0WTIOD)04mP*?SK!xWldAw;pzH} zz@N_bj}*F+p+D<6@UdDfzx$sJ!E_`QGU?Qz)UgFYpL z4i=jmA0xGVXeV+eY|d&|#?hmfPl--m28w1{8IMqU@L08&#`#=!?}`Gz=uvxYtI`%S z5^cAeE1WV))@1z3rJpXWEv+mO?Jk?7%Recr@z{M-cRDg?qiV<~<^vQd5AXXKFOufm z;K_R7%NP*J5;kxqOA_4oM%uj|KJe6+byUUVOBor*642=cTGA zm^b^;y%KGe0Thk(Gwbr=ha{~8J`pR-$LlTa{%5u6A%Pi}vUMQ(Tp-BS^#j_Iu-<6w zAU?Lh?P-19s0gb1a6;ju3M}fF|LE$m#?qH#A~+39zIW!#VcBh(nPeC)!h5V=>LiwT z+vEh(i7Cxp_UQ@L#BglB^vcE-+N^{$v0^+4*WT?>gsiSuI<#L*9RE*%c*dUtX|(^( zKw9y09J1^;uCG5Z9#G!A_fFJ9e2hIB0dH1bIk0zD*@p}AXQ9ZYWs&+LuY~(OZkrun zli#+gdq*(a`jg_uV2}xbUU~xD{e3pGq~zvwte<{`H~E%;cvQ;598s;Mx6h*rFZG6# zHdalw_-*7k(PiZ0Pv`fB)tA6u`s1o(bT%xWMl2Yov@&E{&WOPH-Vu_G<_G$wh^ zbrpnz({x&io0MF$Svj>gR9H_5!i4mr9#tWFy`0#%7Y{cDfBvHe!Nn6m{(5qok$X|$ z4%;-kmze2-$%@s`3W?A|cJgE$Nun|dd2K3Gdd;f=!d;InFO(8N7*y(u0+mnkn;>8@c7&eUK}he41~94}aYI?kkNDmq&$Od$fR z$Y9e*9H*qfLxHaXe1dkNO_v?+h>z0tuN=^~e&uDO3UgO-IG$n)bN#Hlb-?{S!E%ei zOh%%+`Og}JQ{UsIkCR6FDq$sg-1G(gi&op_*_Nl|@NkwMN=-b6zM+^_5NkOBt-3ldcU`*iMzQz;xsFWyMyT{|(^=eBQiHNR0D0e5tZ2@3R z`{}#y{4S00FNmZzNwWt#bgW0rnFq0dgISH2I!cpNUAht_B(k(Un zOHxbh&Kr;IlDD+^Ztm)iSZ7R~770ad){v%0xIykcee90ED_h&(0(|G)8n-6{t|?5# zTw5rAC&Biz-+d^j!<{%+!B~B_X|Az5FFM;0}{ng(#m zK5&cLBVEn61?%rF-a~AVI{Ie+x^+s>dm!syD71n{`;qq{aMkznzc+5A8~#b-CZbyX zn`ED``Oo``Ey4UQBG*JC>9@junsm0U;2)ES-C7y%c|CIDGa;OoP^$)i0JS>O^Wt|9 zMhABX=jA9+s}`Y_ctIFQBTf?U0}wsaUy@!jXUE$#XyPP8JCjf66UuKZknNe)RAmYg zs>CnLQ2@RDw%+(;y#6@m_S)XF#zar6{}eUD@8yYZd$!lE%gl@qFwwp7$kDKeqZ}FZ zo}b1tMP}?=t#vPMJw>)dd{dI1X!sTAhel-&p`2NO1b3JjoU6-Tg8K6?1RcmjkOyQwK4aFUZSAI7nsSZ8(14EZ+nvBWVem*-un6-gk zn7YI%Nv~?_d_}4X=x389{q9E+l=2Gt@>ou@7x1o*R56H=fp3RBwWrcb2KI|Vwn~sg zWHwUDs0ylBKh2xX9)7tw(2bKKlzn39j9QUIY=Gc>0L$+-q?HuK3mZ}o^Q`PAMd9h@ zE{ug6_d_ubFSIO;s|1NR-I#W)-r(+vfJ(JA1>oOK{wK+dHZr=Ccwj@`Cdb&xNaQhz z2fw|pUIqPmB^nnBrn#~u0v~~*qGUjv@8BQ4hgs(WlJ%NY=r+iUh+q2OPx`M?ex3C7 zLdx-!u7pM38q}$T;zkkjW%YRm>*f`gW;94r1-Si4W^M|{GrI5~b&v{ZzF7amgJd2( zaqKP!K%f5shvEn4`NK);o)b>v_rULX8IrGSe+ko1Gd<+R5`CZ0IX&=$cn)o!fTjXLLVs*Cq`AayN^l4v_?p;kT3?{t#%KXE(Zx-_vn7pZ^$1oc^kJf6sEYZ#Gf+fU;e3@ zc71_Gs~xyWcH>B&_5lUh45@HQYib44{7jAs%6_J_RQNG?``KS3Od=5k7Y0~ZD@a>| ztV0R>#SgPBXvoqH$pVyVcuPOsgNJ>C4VJL`3Nr^^pJ24x)#ll+n*X|d#nxPJ)BjRG z?)3I6He&*@D&yf&X4-SUcfTyGX5PY%GRL_d1vocD`Zq^(1Y_uilX<< z$t;&!m$_zf4tFQdijPt<&aEnK+!*DR>~1Gt$dA5T|BHzEtu*?-&xU@TIPSArhX=LC zF$UsXc8J?ydaEwA2oi(^@JqzP2JekMJ@7vTAa!SJH;RjLI;(Dz1i=_T6Rs7B^SH3Z z9&)1+u=ZZ{d8gK8M$`zL5qwe}xPK$;FaqU63XEBgw?2L*p^oXS3*A=;8+Z$|j@spX=vqRmM#g zsQg*k$ooVVSDGvUlJs`Z|3}Rc;?xeXJJRrYySUGjE!-?I+>evFovB3;NyRAP0s#9` ziCPmM(+k=OIGPoqn99sPCNC*Hx482|pZ!(aQ4%8;#Jpoesuh1nyk>-sZqSk~BOcZ+ zu~1+ndENVFr+llZ&`Gga-8*jCow6_?TQOnDtfuiS%2TG?XmEwzWY>Jex~@!jqG#Sk z{7l&dC#4BQD6!!G%-=uK=yB*Y-tQ#>hAl+TjJG&M&r%|ZX;VMas}+}VQM1n_8!uNY zt~ke1A&&OguCcGct|lJK9n1C#yT$xX=aSGM7 z&0hIy#5f0w)?gA7FJggf{I(*=7Xfyy(cTy;xu;?;b0{m5api`Q8f zq9vUcUL0$*VsvvjY%LQmQb{U(UF6M6FKQ8`x~0~>vaIbEzqKqao#0;b_NUfMnGX)> zmcHzkJ%|B!iDW9rkD5rXmn=C>FuBh(EZEwyjXMS@dDX8l5wKi4VF-f5$IhS2)FbHj zew@=s0urNLI~w%ptcYWP-m-Bz4t5{!ZC_0L(%lj`X&$D zu8oRg8Bf)B3>Zg#COWWegbcO&kqpQA!0Fzot;c(bZW*Sw*zjb%+V+%47diTRayUKC zT}pCHV_A$iq1`YVA%mHJ^9U;SWw7M^k>$Ns&|N0u^iGTUgX6NhVEg(QLhk8-Lfz>B z7oVCTV?}L`i7XGFPKGG_-?gntLb`pn%KWlm{)KyeqfS&5A9eB(xWtDq+-!)d)mV{P zddltjNdGW$$|w3Id$&L#%$ipU42Ojc5QSviciGR%zr)A3iBCp<-Jwz0v3)rCF=yj@ z!K^kCvj#!$6ovU8=4-1OKP)8*CLaBCQB<9!G_92mN?5(D$zNeHH=MdrDL=+3k$U=! zeOh)*!h(cfIvExFh?@A_Mbhe32L93_F2oSqT(OB3F;GAA+5Gg4&!WMi=K%ShDR{LT z*k(sr=Bxoc-jpnR+X}g$>;TV>;_zm@)uu`|o-Uh$O-KP4uE`R?LeE*fRe7Y|V?c8F zA*XtPu$jo6BNhIGzAUiWBdmCy>OhPqk`7+{D{3a+ZU#xaZW($>A`9AeN8Fl?O%a*9 z!YG1)V}4L-HrwOJ>hEWx1SPGX`qzXm^wTFL|JX*UOy5eG8iVgejvDSB0^`W&#d&2; z(^W!qU{TWpD%ps9@|f`!PX+X-FIaRTvr02Mjh9l9Mp4DefR=5@j^hz}7~ZOJj{u(; zp9DWr_92Zc@@^D!n38%5su}kwvzmIp*cUyVhT}-bz(;w@htHti*{fXeH>FF~XzRb> zdUgOdEkN^cQO&<4&R}ZL0VH~L( zZ;h1DSKO3q9EH@eEPY_&VF^UruNUUr<3g0YI7%m#txzB$-v(Sw&`q8%vMXtkMi ziYexCM6CCx)KYpq4bunhl;Vo=$~i|U?RWxWRZ)ykao$QcjWqVWs#jY)8VmYX%%oW7 zy1n+or|_yrM^2%=`o2Cho&@gdeLB9H;&KS8S#7ublwuSc-_^{}L5wf^tk_aKB>ZNr znMCeL9H$>JgIYl?xCrr^^Qb18V2i`#dp1;LR*Oawr*7Nqv>BB-y^yB}1{Ia8f(gNn68WepY1_lu9C zr8T7j(e_8+j1mfXvEW}SUGetIU)ma$LVXQ(zfx6H?863)%?ct~R|&+CsIQF8 z>LQW!cNb~IEfUY@+~fwQIG)_^J$IPHI}Y#6;!=2h#H}~iu9BAO8P496pvZbsh7j>B zbxI~1Pe{7)J7GH(TvjG78Ca^WgBl}CEovks)TeKp-G4FZZ5`vnx=I!W`9xxpgL40p z>!vZ>4kH-GJ@%vx)+Mx}zofD*zP;`0ilY?aMPX>C>v}f{|MnA=m{J8r7 z9D?~XP?hu~+Le7?H_3WynBj1cCbsS*nIe+tIm;hasBMRfhvs6wB8s%^asCzhGFMs? zcP)6Y*wU_t`&sLvAYq_H(xO1|>XMqS#x_-h2`kj;8Cv?ZT1|eRdZ;d18Olw24|^s8 z6j0UlT%Tzo!=?(71W#0zQa@y&41PX-o^dukg&8s#LWJLYKCsL1*&@t+!>32MzrGmB z+11cf!3AK!TdCz_@v^TDt!Ksfk;(7;#(bFU{?qR&T=?c(9&n@ezj&|t`V#PWQ$-72 ItYjAWe=|=w)c^nh literal 0 HcmV?d00001 diff --git a/assets/Install-Tab-Light.png b/assets/Install-Tab-Light.png new file mode 100644 index 0000000000000000000000000000000000000000..c619d2237bffedcb02962d6b8192658b1fb83273 GIT binary patch literal 140659 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

U&b^TQ` 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 bqf7j+N-WSx#c38i;HROcty-pR74rW95ons7 literal 0 HcmV?d00001 diff --git a/assets/MicroWinScreen.png b/assets/MicroWinScreen.png new file mode 100644 index 0000000000000000000000000000000000000000..b815187dd8499aa703763c8d2c1bba1996f1449b GIT binary patch literal 104402 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 C4$JZY literal 0 HcmV?d00001 diff --git a/assets/Microwin-Dark.png b/assets/Microwin-Dark.png new file mode 100644 index 0000000000000000000000000000000000000000..f1a0cc698e1c91bd01e3ec75c5ce654bbcfe9157 GIT binary patch literal 110604 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

`o(IaKLZ7Xp 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 SAEem9QSXk??aEvBFa8SyyMo66 literal 0 HcmV?d00001 diff --git a/assets/Microwin-Light.png b/assets/Microwin-Light.png new file mode 100644 index 0000000000000000000000000000000000000000..20b5a13614bc7fab831f67088c075b1429230caa GIT binary patch literal 80496 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

ujXIUZX(pLoz{FvXQx{+GbTRQXMQF{Y_mhf|w7 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 literal 0 HcmV?d00001 diff --git a/assets/Push-Commit.png b/assets/Push-Commit.png new file mode 100644 index 0000000000000000000000000000000000000000..d8395373fa354e41cd87bd9ae0b0c9e1194dc8d8 GIT binary patch literal 79066 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%0De>l0Ot~iXeLO`dm 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

>?v#uP0YmPu1EVuV5Ev2)`85G`5ehoe| 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

`imo;0CG14km#d9k3ezGD$-~5yU${jFwkzP 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 Ba&-Uz literal 0 HcmV?d00001 diff --git a/assets/Settings-Export-Dark.png b/assets/Settings-Export-Dark.png new file mode 100644 index 0000000000000000000000000000000000000000..9a1480b2096efda1ff2abf6df55504ce8ac1f4db GIT binary patch literal 41519 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 literal 0 HcmV?d00001 diff --git a/assets/Settings-Export-Light.png b/assets/Settings-Export-Light.png new file mode 100644 index 0000000000000000000000000000000000000000..3fa1d2d1f3af292e05fc4d482222555c5f595de0 GIT binary patch literal 29047 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≥X?qzu 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 literal 0 HcmV?d00001 diff --git a/assets/Title-Screen.png b/assets/Title-Screen.png new file mode 100644 index 0000000000000000000000000000000000000000..4e219b2ccd77e15ea0dc20a8c033690c256b9562 GIT binary patch literal 347293 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

*C^~rm5+#Qv_skzn_TUzO#weYgg&WsafmQ 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∪wsUm4s<$n6}r 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 literal 0 HcmV?d00001 diff --git a/assets/Tweaks-Tab-Dark.png b/assets/Tweaks-Tab-Dark.png new file mode 100644 index 0000000000000000000000000000000000000000..76c7d8456666588d1a770c28ab3fa6c47605aea2 GIT binary patch literal 153864 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ℜ1liz~lN1Bf5G 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 literal 0 HcmV?d00001 diff --git a/assets/Tweaks-Tab-Light.png b/assets/Tweaks-Tab-Light.png new file mode 100644 index 0000000000000000000000000000000000000000..d4afa964efbe60851c9a87ff3d191ce867319a28 GIT binary patch literal 101648 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%0DF5$MO}rNkbLQ_s--I_YOT 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

Wt^MFOn_`ox!R#7>h@Zk;ru2aI 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 IM6N<$f(jP3KmY&$ literal 0 HcmV?d00001 diff --git a/assets/javascripts/bundle.fe8b6f2b.min.js b/assets/javascripts/bundle.fe8b6f2b.min.js new file mode 100644 index 000000000..cf778d428 --- /dev/null +++ b/assets/javascripts/bundle.fe8b6f2b.min.js @@ -0,0 +1,29 @@ +"use strict";(()=>{var Fi=Object.create;var gr=Object.defineProperty;var ji=Object.getOwnPropertyDescriptor;var Wi=Object.getOwnPropertyNames,Dt=Object.getOwnPropertySymbols,Ui=Object.getPrototypeOf,xr=Object.prototype.hasOwnProperty,no=Object.prototype.propertyIsEnumerable;var oo=(e,t,r)=>t in e?gr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,R=(e,t)=>{for(var r in t||(t={}))xr.call(t,r)&&oo(e,r,t[r]);if(Dt)for(var r of Dt(t))no.call(t,r)&&oo(e,r,t[r]);return e};var io=(e,t)=>{var r={};for(var o in e)xr.call(e,o)&&t.indexOf(o)<0&&(r[o]=e[o]);if(e!=null&&Dt)for(var o of Dt(e))t.indexOf(o)<0&&no.call(e,o)&&(r[o]=e[o]);return r};var yr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Di=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Wi(t))!xr.call(e,n)&&n!==r&&gr(e,n,{get:()=>t[n],enumerable:!(o=ji(t,n))||o.enumerable});return e};var Vt=(e,t,r)=>(r=e!=null?Fi(Ui(e)):{},Di(t||!e||!e.__esModule?gr(r,"default",{value:e,enumerable:!0}):r,e));var ao=(e,t,r)=>new Promise((o,n)=>{var i=p=>{try{s(r.next(p))}catch(c){n(c)}},a=p=>{try{s(r.throw(p))}catch(c){n(c)}},s=p=>p.done?o(p.value):Promise.resolve(p.value).then(i,a);s((r=r.apply(e,t)).next())});var co=yr((Er,so)=>{(function(e,t){typeof Er=="object"&&typeof so!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(Er,function(){"use strict";function e(r){var o=!0,n=!1,i=null,a={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function s(H){return!!(H&&H!==document&&H.nodeName!=="HTML"&&H.nodeName!=="BODY"&&"classList"in H&&"contains"in H.classList)}function p(H){var mt=H.type,ze=H.tagName;return!!(ze==="INPUT"&&a[mt]&&!H.readOnly||ze==="TEXTAREA"&&!H.readOnly||H.isContentEditable)}function c(H){H.classList.contains("focus-visible")||(H.classList.add("focus-visible"),H.setAttribute("data-focus-visible-added",""))}function l(H){H.hasAttribute("data-focus-visible-added")&&(H.classList.remove("focus-visible"),H.removeAttribute("data-focus-visible-added"))}function f(H){H.metaKey||H.altKey||H.ctrlKey||(s(r.activeElement)&&c(r.activeElement),o=!0)}function u(H){o=!1}function h(H){s(H.target)&&(o||p(H.target))&&c(H.target)}function w(H){s(H.target)&&(H.target.classList.contains("focus-visible")||H.target.hasAttribute("data-focus-visible-added"))&&(n=!0,window.clearTimeout(i),i=window.setTimeout(function(){n=!1},100),l(H.target))}function A(H){document.visibilityState==="hidden"&&(n&&(o=!0),te())}function te(){document.addEventListener("mousemove",J),document.addEventListener("mousedown",J),document.addEventListener("mouseup",J),document.addEventListener("pointermove",J),document.addEventListener("pointerdown",J),document.addEventListener("pointerup",J),document.addEventListener("touchmove",J),document.addEventListener("touchstart",J),document.addEventListener("touchend",J)}function ie(){document.removeEventListener("mousemove",J),document.removeEventListener("mousedown",J),document.removeEventListener("mouseup",J),document.removeEventListener("pointermove",J),document.removeEventListener("pointerdown",J),document.removeEventListener("pointerup",J),document.removeEventListener("touchmove",J),document.removeEventListener("touchstart",J),document.removeEventListener("touchend",J)}function J(H){H.target.nodeName&&H.target.nodeName.toLowerCase()==="html"||(o=!1,ie())}document.addEventListener("keydown",f,!0),document.addEventListener("mousedown",u,!0),document.addEventListener("pointerdown",u,!0),document.addEventListener("touchstart",u,!0),document.addEventListener("visibilitychange",A,!0),te(),r.addEventListener("focus",h,!0),r.addEventListener("blur",w,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var Yr=yr((Rt,Kr)=>{/*! + * clipboard.js v2.0.11 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */(function(t,r){typeof Rt=="object"&&typeof Kr=="object"?Kr.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Rt=="object"?Rt.ClipboardJS=r():t.ClipboardJS=r()})(Rt,function(){return function(){var e={686:function(o,n,i){"use strict";i.d(n,{default:function(){return Ii}});var a=i(279),s=i.n(a),p=i(370),c=i.n(p),l=i(817),f=i.n(l);function u(V){try{return document.execCommand(V)}catch(_){return!1}}var h=function(_){var M=f()(_);return u("cut"),M},w=h;function A(V){var _=document.documentElement.getAttribute("dir")==="rtl",M=document.createElement("textarea");M.style.fontSize="12pt",M.style.border="0",M.style.padding="0",M.style.margin="0",M.style.position="absolute",M.style[_?"right":"left"]="-9999px";var j=window.pageYOffset||document.documentElement.scrollTop;return M.style.top="".concat(j,"px"),M.setAttribute("readonly",""),M.value=V,M}var te=function(_,M){var j=A(_);M.container.appendChild(j);var D=f()(j);return u("copy"),j.remove(),D},ie=function(_){var M=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},j="";return typeof _=="string"?j=te(_,M):_ instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(_==null?void 0:_.type)?j=te(_.value,M):(j=f()(_),u("copy")),j},J=ie;function H(V){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?H=function(M){return typeof M}:H=function(M){return M&&typeof Symbol=="function"&&M.constructor===Symbol&&M!==Symbol.prototype?"symbol":typeof M},H(V)}var mt=function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},M=_.action,j=M===void 0?"copy":M,D=_.container,Y=_.target,ke=_.text;if(j!=="copy"&&j!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(Y!==void 0)if(Y&&H(Y)==="object"&&Y.nodeType===1){if(j==="copy"&&Y.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(j==="cut"&&(Y.hasAttribute("readonly")||Y.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(ke)return J(ke,{container:D});if(Y)return j==="cut"?w(Y):J(Y,{container:D})},ze=mt;function Ie(V){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Ie=function(M){return typeof M}:Ie=function(M){return M&&typeof Symbol=="function"&&M.constructor===Symbol&&M!==Symbol.prototype?"symbol":typeof M},Ie(V)}function _i(V,_){if(!(V instanceof _))throw new TypeError("Cannot call a class as a function")}function ro(V,_){for(var M=0;M<_.length;M++){var j=_[M];j.enumerable=j.enumerable||!1,j.configurable=!0,"value"in j&&(j.writable=!0),Object.defineProperty(V,j.key,j)}}function Ai(V,_,M){return _&&ro(V.prototype,_),M&&ro(V,M),V}function Ci(V,_){if(typeof _!="function"&&_!==null)throw new TypeError("Super expression must either be null or a function");V.prototype=Object.create(_&&_.prototype,{constructor:{value:V,writable:!0,configurable:!0}}),_&&br(V,_)}function br(V,_){return br=Object.setPrototypeOf||function(j,D){return j.__proto__=D,j},br(V,_)}function Hi(V){var _=Pi();return function(){var j=Wt(V),D;if(_){var Y=Wt(this).constructor;D=Reflect.construct(j,arguments,Y)}else D=j.apply(this,arguments);return ki(this,D)}}function ki(V,_){return _&&(Ie(_)==="object"||typeof _=="function")?_:$i(V)}function $i(V){if(V===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return V}function Pi(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(V){return!1}}function Wt(V){return Wt=Object.setPrototypeOf?Object.getPrototypeOf:function(M){return M.__proto__||Object.getPrototypeOf(M)},Wt(V)}function vr(V,_){var M="data-clipboard-".concat(V);if(_.hasAttribute(M))return _.getAttribute(M)}var Ri=function(V){Ci(M,V);var _=Hi(M);function M(j,D){var Y;return _i(this,M),Y=_.call(this),Y.resolveOptions(D),Y.listenClick(j),Y}return Ai(M,[{key:"resolveOptions",value:function(){var D=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof D.action=="function"?D.action:this.defaultAction,this.target=typeof D.target=="function"?D.target:this.defaultTarget,this.text=typeof D.text=="function"?D.text:this.defaultText,this.container=Ie(D.container)==="object"?D.container:document.body}},{key:"listenClick",value:function(D){var Y=this;this.listener=c()(D,"click",function(ke){return Y.onClick(ke)})}},{key:"onClick",value:function(D){var Y=D.delegateTarget||D.currentTarget,ke=this.action(Y)||"copy",Ut=ze({action:ke,container:this.container,target:this.target(Y),text:this.text(Y)});this.emit(Ut?"success":"error",{action:ke,text:Ut,trigger:Y,clearSelection:function(){Y&&Y.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(D){return vr("action",D)}},{key:"defaultTarget",value:function(D){var Y=vr("target",D);if(Y)return document.querySelector(Y)}},{key:"defaultText",value:function(D){return vr("text",D)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(D){var Y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return J(D,Y)}},{key:"cut",value:function(D){return w(D)}},{key:"isSupported",value:function(){var D=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],Y=typeof D=="string"?[D]:D,ke=!!document.queryCommandSupported;return Y.forEach(function(Ut){ke=ke&&!!document.queryCommandSupported(Ut)}),ke}}]),M}(s()),Ii=Ri},828:function(o){var n=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function a(s,p){for(;s&&s.nodeType!==n;){if(typeof s.matches=="function"&&s.matches(p))return s;s=s.parentNode}}o.exports=a},438:function(o,n,i){var a=i(828);function s(l,f,u,h,w){var A=c.apply(this,arguments);return l.addEventListener(u,A,w),{destroy:function(){l.removeEventListener(u,A,w)}}}function p(l,f,u,h,w){return typeof l.addEventListener=="function"?s.apply(null,arguments):typeof u=="function"?s.bind(null,document).apply(null,arguments):(typeof l=="string"&&(l=document.querySelectorAll(l)),Array.prototype.map.call(l,function(A){return s(A,f,u,h,w)}))}function c(l,f,u,h){return function(w){w.delegateTarget=a(w.target,f),w.delegateTarget&&h.call(l,w)}}o.exports=p},879:function(o,n){n.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},n.nodeList=function(i){var a=Object.prototype.toString.call(i);return i!==void 0&&(a==="[object NodeList]"||a==="[object HTMLCollection]")&&"length"in i&&(i.length===0||n.node(i[0]))},n.string=function(i){return typeof i=="string"||i instanceof String},n.fn=function(i){var a=Object.prototype.toString.call(i);return a==="[object Function]"}},370:function(o,n,i){var a=i(879),s=i(438);function p(u,h,w){if(!u&&!h&&!w)throw new Error("Missing required arguments");if(!a.string(h))throw new TypeError("Second argument must be a String");if(!a.fn(w))throw new TypeError("Third argument must be a Function");if(a.node(u))return c(u,h,w);if(a.nodeList(u))return l(u,h,w);if(a.string(u))return f(u,h,w);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function c(u,h,w){return u.addEventListener(h,w),{destroy:function(){u.removeEventListener(h,w)}}}function l(u,h,w){return Array.prototype.forEach.call(u,function(A){A.addEventListener(h,w)}),{destroy:function(){Array.prototype.forEach.call(u,function(A){A.removeEventListener(h,w)})}}}function f(u,h,w){return s(document.body,u,h,w)}o.exports=p},817:function(o){function n(i){var a;if(i.nodeName==="SELECT")i.focus(),a=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var s=i.hasAttribute("readonly");s||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),s||i.removeAttribute("readonly"),a=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var p=window.getSelection(),c=document.createRange();c.selectNodeContents(i),p.removeAllRanges(),p.addRange(c),a=p.toString()}return a}o.exports=n},279:function(o){function n(){}n.prototype={on:function(i,a,s){var p=this.e||(this.e={});return(p[i]||(p[i]=[])).push({fn:a,ctx:s}),this},once:function(i,a,s){var p=this;function c(){p.off(i,c),a.apply(s,arguments)}return c._=a,this.on(i,c,s)},emit:function(i){var a=[].slice.call(arguments,1),s=((this.e||(this.e={}))[i]||[]).slice(),p=0,c=s.length;for(p;p{"use strict";/*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + */var ts=/["'&<>]/;ei.exports=rs;function rs(e){var t=""+e,r=ts.exec(t);if(!r)return t;var o,n="",i=0,a=0;for(i=r.index;i0&&i[i.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function N(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var o=r.call(e),n,i=[],a;try{for(;(t===void 0||t-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(s){a={error:s}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i}function q(e,t,r){if(r||arguments.length===2)for(var o=0,n=t.length,i;o1||s(u,h)})})}function s(u,h){try{p(o[u](h))}catch(w){f(i[0][3],w)}}function p(u){u.value instanceof nt?Promise.resolve(u.value.v).then(c,l):f(i[0][2],u)}function c(u){s("next",u)}function l(u){s("throw",u)}function f(u,h){u(h),i.shift(),i.length&&s(i[0][0],i[0][1])}}function mo(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof de=="function"?de(e):e[Symbol.iterator](),r={},o("next"),o("throw"),o("return"),r[Symbol.asyncIterator]=function(){return this},r);function o(i){r[i]=e[i]&&function(a){return new Promise(function(s,p){a=e[i](a),n(s,p,a.done,a.value)})}}function n(i,a,s,p){Promise.resolve(p).then(function(c){i({value:c,done:s})},a)}}function k(e){return typeof e=="function"}function ft(e){var t=function(o){Error.call(o),o.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var zt=ft(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: +`+r.map(function(o,n){return n+1+") "+o.toString()}).join(` + `):"",this.name="UnsubscriptionError",this.errors=r}});function qe(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Fe=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,o,n,i;if(!this.closed){this.closed=!0;var a=this._parentage;if(a)if(this._parentage=null,Array.isArray(a))try{for(var s=de(a),p=s.next();!p.done;p=s.next()){var c=p.value;c.remove(this)}}catch(A){t={error:A}}finally{try{p&&!p.done&&(r=s.return)&&r.call(s)}finally{if(t)throw t.error}}else a.remove(this);var l=this.initialTeardown;if(k(l))try{l()}catch(A){i=A instanceof zt?A.errors:[A]}var f=this._finalizers;if(f){this._finalizers=null;try{for(var u=de(f),h=u.next();!h.done;h=u.next()){var w=h.value;try{fo(w)}catch(A){i=i!=null?i:[],A instanceof zt?i=q(q([],N(i)),N(A.errors)):i.push(A)}}}catch(A){o={error:A}}finally{try{h&&!h.done&&(n=u.return)&&n.call(u)}finally{if(o)throw o.error}}}if(i)throw new zt(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)fo(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&qe(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&qe(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var Tr=Fe.EMPTY;function qt(e){return e instanceof Fe||e&&"closed"in e&&k(e.remove)&&k(e.add)&&k(e.unsubscribe)}function fo(e){k(e)?e():e.unsubscribe()}var $e={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var ut={setTimeout:function(e,t){for(var r=[],o=2;o0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var o=this,n=this,i=n.hasError,a=n.isStopped,s=n.observers;return i||a?Tr:(this.currentObservers=null,s.push(r),new Fe(function(){o.currentObservers=null,qe(s,r)}))},t.prototype._checkFinalizedStatuses=function(r){var o=this,n=o.hasError,i=o.thrownError,a=o.isStopped;n?r.error(i):a&&r.complete()},t.prototype.asObservable=function(){var r=new F;return r.source=this,r},t.create=function(r,o){return new Eo(r,o)},t}(F);var Eo=function(e){re(t,e);function t(r,o){var n=e.call(this)||this;return n.destination=r,n.source=o,n}return t.prototype.next=function(r){var o,n;(n=(o=this.destination)===null||o===void 0?void 0:o.next)===null||n===void 0||n.call(o,r)},t.prototype.error=function(r){var o,n;(n=(o=this.destination)===null||o===void 0?void 0:o.error)===null||n===void 0||n.call(o,r)},t.prototype.complete=function(){var r,o;(o=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||o===void 0||o.call(r)},t.prototype._subscribe=function(r){var o,n;return(n=(o=this.source)===null||o===void 0?void 0:o.subscribe(r))!==null&&n!==void 0?n:Tr},t}(g);var _r=function(e){re(t,e);function t(r){var o=e.call(this)||this;return o._value=r,o}return Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),t.prototype._subscribe=function(r){var o=e.prototype._subscribe.call(this,r);return!o.closed&&r.next(this._value),o},t.prototype.getValue=function(){var r=this,o=r.hasError,n=r.thrownError,i=r._value;if(o)throw n;return this._throwIfClosed(),i},t.prototype.next=function(r){e.prototype.next.call(this,this._value=r)},t}(g);var Lt={now:function(){return(Lt.delegate||Date).now()},delegate:void 0};var _t=function(e){re(t,e);function t(r,o,n){r===void 0&&(r=1/0),o===void 0&&(o=1/0),n===void 0&&(n=Lt);var i=e.call(this)||this;return i._bufferSize=r,i._windowTime=o,i._timestampProvider=n,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=o===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,o),i}return t.prototype.next=function(r){var o=this,n=o.isStopped,i=o._buffer,a=o._infiniteTimeWindow,s=o._timestampProvider,p=o._windowTime;n||(i.push(r),!a&&i.push(s.now()+p)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var o=this._innerSubscribe(r),n=this,i=n._infiniteTimeWindow,a=n._buffer,s=a.slice(),p=0;p0?e.prototype.schedule.call(this,r,o):(this.delay=o,this.state=r,this.scheduler.flush(this),this)},t.prototype.execute=function(r,o){return o>0||this.closed?e.prototype.execute.call(this,r,o):this._execute(r,o)},t.prototype.requestAsyncId=function(r,o,n){return n===void 0&&(n=0),n!=null&&n>0||n==null&&this.delay>0?e.prototype.requestAsyncId.call(this,r,o,n):(r.flush(this),0)},t}(vt);var So=function(e){re(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(gt);var Hr=new So(To);var Oo=function(e){re(t,e);function t(r,o){var n=e.call(this,r,o)||this;return n.scheduler=r,n.work=o,n}return t.prototype.requestAsyncId=function(r,o,n){return n===void 0&&(n=0),n!==null&&n>0?e.prototype.requestAsyncId.call(this,r,o,n):(r.actions.push(this),r._scheduled||(r._scheduled=bt.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,o,n){var i;if(n===void 0&&(n=0),n!=null?n>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,o,n);var a=r.actions;o!=null&&((i=a[a.length-1])===null||i===void 0?void 0:i.id)!==o&&(bt.cancelAnimationFrame(o),r._scheduled=void 0)},t}(vt);var Mo=function(e){re(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var o=this._scheduled;this._scheduled=void 0;var n=this.actions,i;r=r||n.shift();do if(i=r.execute(r.state,r.delay))break;while((r=n[0])&&r.id===o&&n.shift());if(this._active=!1,i){for(;(r=n[0])&&r.id===o&&n.shift();)r.unsubscribe();throw i}},t}(gt);var me=new Mo(Oo);var O=new F(function(e){return e.complete()});function Yt(e){return e&&k(e.schedule)}function kr(e){return e[e.length-1]}function Xe(e){return k(kr(e))?e.pop():void 0}function He(e){return Yt(kr(e))?e.pop():void 0}function Bt(e,t){return typeof kr(e)=="number"?e.pop():t}var xt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function Gt(e){return k(e==null?void 0:e.then)}function Jt(e){return k(e[ht])}function Xt(e){return Symbol.asyncIterator&&k(e==null?void 0:e[Symbol.asyncIterator])}function Zt(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function Gi(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var er=Gi();function tr(e){return k(e==null?void 0:e[er])}function rr(e){return lo(this,arguments,function(){var r,o,n,i;return Nt(this,function(a){switch(a.label){case 0:r=e.getReader(),a.label=1;case 1:a.trys.push([1,,9,10]),a.label=2;case 2:return[4,nt(r.read())];case 3:return o=a.sent(),n=o.value,i=o.done,i?[4,nt(void 0)]:[3,5];case 4:return[2,a.sent()];case 5:return[4,nt(n)];case 6:return[4,a.sent()];case 7:return a.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function or(e){return k(e==null?void 0:e.getReader)}function W(e){if(e instanceof F)return e;if(e!=null){if(Jt(e))return Ji(e);if(xt(e))return Xi(e);if(Gt(e))return Zi(e);if(Xt(e))return Lo(e);if(tr(e))return ea(e);if(or(e))return ta(e)}throw Zt(e)}function Ji(e){return new F(function(t){var r=e[ht]();if(k(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function Xi(e){return new F(function(t){for(var r=0;r=2;return function(o){return o.pipe(e?b(function(n,i){return e(n,i,o)}):le,Te(1),r?Be(t):zo(function(){return new ir}))}}function Fr(e){return e<=0?function(){return O}:y(function(t,r){var o=[];t.subscribe(T(r,function(n){o.push(n),e=2,!0))}function pe(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new g}:t,o=e.resetOnError,n=o===void 0?!0:o,i=e.resetOnComplete,a=i===void 0?!0:i,s=e.resetOnRefCountZero,p=s===void 0?!0:s;return function(c){var l,f,u,h=0,w=!1,A=!1,te=function(){f==null||f.unsubscribe(),f=void 0},ie=function(){te(),l=u=void 0,w=A=!1},J=function(){var H=l;ie(),H==null||H.unsubscribe()};return y(function(H,mt){h++,!A&&!w&&te();var ze=u=u!=null?u:r();mt.add(function(){h--,h===0&&!A&&!w&&(f=Wr(J,p))}),ze.subscribe(mt),!l&&h>0&&(l=new at({next:function(Ie){return ze.next(Ie)},error:function(Ie){A=!0,te(),f=Wr(ie,n,Ie),ze.error(Ie)},complete:function(){w=!0,te(),f=Wr(ie,a),ze.complete()}}),W(H).subscribe(l))})(c)}}function Wr(e,t){for(var r=[],o=2;oe.next(document)),e}function $(e,t=document){return Array.from(t.querySelectorAll(e))}function P(e,t=document){let r=fe(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function fe(e,t=document){return t.querySelector(e)||void 0}function Re(){var e,t,r,o;return(o=(r=(t=(e=document.activeElement)==null?void 0:e.shadowRoot)==null?void 0:t.activeElement)!=null?r:document.activeElement)!=null?o:void 0}var xa=S(d(document.body,"focusin"),d(document.body,"focusout")).pipe(_e(1),Q(void 0),m(()=>Re()||document.body),G(1));function et(e){return xa.pipe(m(t=>e.contains(t)),K())}function kt(e,t){return C(()=>S(d(e,"mouseenter").pipe(m(()=>!0)),d(e,"mouseleave").pipe(m(()=>!1))).pipe(t?Ht(r=>Me(+!r*t)):le,Q(e.matches(":hover"))))}function Bo(e,t){if(typeof t=="string"||typeof t=="number")e.innerHTML+=t.toString();else if(t instanceof Node)e.appendChild(t);else if(Array.isArray(t))for(let r of t)Bo(e,r)}function x(e,t,...r){let o=document.createElement(e);if(t)for(let n of Object.keys(t))typeof t[n]!="undefined"&&(typeof t[n]!="boolean"?o.setAttribute(n,t[n]):o.setAttribute(n,""));for(let n of r)Bo(o,n);return o}function sr(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function wt(e){let t=x("script",{src:e});return C(()=>(document.head.appendChild(t),S(d(t,"load"),d(t,"error").pipe(v(()=>$r(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(m(()=>{}),L(()=>document.head.removeChild(t)),Te(1))))}var Go=new g,ya=C(()=>typeof ResizeObserver=="undefined"?wt("https://unpkg.com/resize-observer-polyfill"):I(void 0)).pipe(m(()=>new ResizeObserver(e=>e.forEach(t=>Go.next(t)))),v(e=>S(Ke,I(e)).pipe(L(()=>e.disconnect()))),G(1));function ce(e){return{width:e.offsetWidth,height:e.offsetHeight}}function ge(e){let t=e;for(;t.clientWidth===0&&t.parentElement;)t=t.parentElement;return ya.pipe(E(r=>r.observe(t)),v(r=>Go.pipe(b(o=>o.target===t),L(()=>r.unobserve(t)))),m(()=>ce(e)),Q(ce(e)))}function Tt(e){return{width:e.scrollWidth,height:e.scrollHeight}}function cr(e){let t=e.parentElement;for(;t&&(e.scrollWidth<=t.scrollWidth&&e.scrollHeight<=t.scrollHeight);)t=(e=t).parentElement;return t?e:void 0}function Jo(e){let t=[],r=e.parentElement;for(;r;)(e.clientWidth>r.clientWidth||e.clientHeight>r.clientHeight)&&t.push(r),r=(e=r).parentElement;return t.length===0&&t.push(document.documentElement),t}function Ue(e){return{x:e.offsetLeft,y:e.offsetTop}}function Xo(e){let t=e.getBoundingClientRect();return{x:t.x+window.scrollX,y:t.y+window.scrollY}}function Zo(e){return S(d(window,"load"),d(window,"resize")).pipe(Le(0,me),m(()=>Ue(e)),Q(Ue(e)))}function pr(e){return{x:e.scrollLeft,y:e.scrollTop}}function De(e){return S(d(e,"scroll"),d(window,"scroll"),d(window,"resize")).pipe(Le(0,me),m(()=>pr(e)),Q(pr(e)))}var en=new g,Ea=C(()=>I(new IntersectionObserver(e=>{for(let t of e)en.next(t)},{threshold:0}))).pipe(v(e=>S(Ke,I(e)).pipe(L(()=>e.disconnect()))),G(1));function tt(e){return Ea.pipe(E(t=>t.observe(e)),v(t=>en.pipe(b(({target:r})=>r===e),L(()=>t.unobserve(e)),m(({isIntersecting:r})=>r))))}function tn(e,t=16){return De(e).pipe(m(({y:r})=>{let o=ce(e),n=Tt(e);return r>=n.height-o.height-t}),K())}var lr={drawer:P("[data-md-toggle=drawer]"),search:P("[data-md-toggle=search]")};function rn(e){return lr[e].checked}function Je(e,t){lr[e].checked!==t&&lr[e].click()}function Ve(e){let t=lr[e];return d(t,"change").pipe(m(()=>t.checked),Q(t.checked))}function wa(e,t){switch(e.constructor){case HTMLInputElement:return e.type==="radio"?/^Arrow/.test(t):!0;case HTMLSelectElement:case HTMLTextAreaElement:return!0;default:return e.isContentEditable}}function Ta(){return S(d(window,"compositionstart").pipe(m(()=>!0)),d(window,"compositionend").pipe(m(()=>!1))).pipe(Q(!1))}function on(){let e=d(window,"keydown").pipe(b(t=>!(t.metaKey||t.ctrlKey)),m(t=>({mode:rn("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),b(({mode:t,type:r})=>{if(t==="global"){let o=Re();if(typeof o!="undefined")return!wa(o,r)}return!0}),pe());return Ta().pipe(v(t=>t?O:e))}function xe(){return new URL(location.href)}function pt(e,t=!1){if(B("navigation.instant")&&!t){let r=x("a",{href:e.href});document.body.appendChild(r),r.click(),r.remove()}else location.href=e.href}function nn(){return new g}function an(){return location.hash.slice(1)}function sn(e){let t=x("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function Sa(e){return S(d(window,"hashchange"),e).pipe(m(an),Q(an()),b(t=>t.length>0),G(1))}function cn(e){return Sa(e).pipe(m(t=>fe(`[id="${t}"]`)),b(t=>typeof t!="undefined"))}function $t(e){let t=matchMedia(e);return ar(r=>t.addListener(()=>r(t.matches))).pipe(Q(t.matches))}function pn(){let e=matchMedia("print");return S(d(window,"beforeprint").pipe(m(()=>!0)),d(window,"afterprint").pipe(m(()=>!1))).pipe(Q(e.matches))}function Nr(e,t){return e.pipe(v(r=>r?t():O))}function zr(e,t){return new F(r=>{let o=new XMLHttpRequest;return o.open("GET",`${e}`),o.responseType="blob",o.addEventListener("load",()=>{o.status>=200&&o.status<300?(r.next(o.response),r.complete()):r.error(new Error(o.statusText))}),o.addEventListener("error",()=>{r.error(new Error("Network error"))}),o.addEventListener("abort",()=>{r.complete()}),typeof(t==null?void 0:t.progress$)!="undefined"&&(o.addEventListener("progress",n=>{var i;if(n.lengthComputable)t.progress$.next(n.loaded/n.total*100);else{let a=(i=o.getResponseHeader("Content-Length"))!=null?i:0;t.progress$.next(n.loaded/+a*100)}}),t.progress$.next(5)),o.send(),()=>o.abort()})}function Ne(e,t){return zr(e,t).pipe(v(r=>r.text()),m(r=>JSON.parse(r)),G(1))}function ln(e,t){let r=new DOMParser;return zr(e,t).pipe(v(o=>o.text()),m(o=>r.parseFromString(o,"text/html")),G(1))}function mn(e,t){let r=new DOMParser;return zr(e,t).pipe(v(o=>o.text()),m(o=>r.parseFromString(o,"text/xml")),G(1))}function fn(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function un(){return S(d(window,"scroll",{passive:!0}),d(window,"resize",{passive:!0})).pipe(m(fn),Q(fn()))}function dn(){return{width:innerWidth,height:innerHeight}}function hn(){return d(window,"resize",{passive:!0}).pipe(m(dn),Q(dn()))}function bn(){return z([un(),hn()]).pipe(m(([e,t])=>({offset:e,size:t})),G(1))}function mr(e,{viewport$:t,header$:r}){let o=t.pipe(Z("size")),n=z([o,r]).pipe(m(()=>Ue(e)));return z([r,t,n]).pipe(m(([{height:i},{offset:a,size:s},{x:p,y:c}])=>({offset:{x:a.x-p,y:a.y-c+i},size:s})))}function Oa(e){return d(e,"message",t=>t.data)}function Ma(e){let t=new g;return t.subscribe(r=>e.postMessage(r)),t}function vn(e,t=new Worker(e)){let r=Oa(t),o=Ma(t),n=new g;n.subscribe(o);let i=o.pipe(X(),ne(!0));return n.pipe(X(),Pe(r.pipe(U(i))),pe())}var La=P("#__config"),St=JSON.parse(La.textContent);St.base=`${new URL(St.base,xe())}`;function ye(){return St}function B(e){return St.features.includes(e)}function Ee(e,t){return typeof t!="undefined"?St.translations[e].replace("#",t.toString()):St.translations[e]}function Se(e,t=document){return P(`[data-md-component=${e}]`,t)}function ae(e,t=document){return $(`[data-md-component=${e}]`,t)}function _a(e){let t=P(".md-typeset > :first-child",e);return d(t,"click",{once:!0}).pipe(m(()=>P(".md-typeset",e)),m(r=>({hash:__md_hash(r.innerHTML)})))}function gn(e){if(!B("announce.dismiss")||!e.childElementCount)return O;if(!e.hidden){let t=P(".md-typeset",e);__md_hash(t.innerHTML)===__md_get("__announce")&&(e.hidden=!0)}return C(()=>{let t=new g;return t.subscribe(({hash:r})=>{e.hidden=!0,__md_set("__announce",r)}),_a(e).pipe(E(r=>t.next(r)),L(()=>t.complete()),m(r=>R({ref:e},r)))})}function Aa(e,{target$:t}){return t.pipe(m(r=>({hidden:r!==e})))}function xn(e,t){let r=new g;return r.subscribe(({hidden:o})=>{e.hidden=o}),Aa(e,t).pipe(E(o=>r.next(o)),L(()=>r.complete()),m(o=>R({ref:e},o)))}function Pt(e,t){return t==="inline"?x("div",{class:"md-tooltip md-tooltip--inline",id:e,role:"tooltip"},x("div",{class:"md-tooltip__inner md-typeset"})):x("div",{class:"md-tooltip",id:e,role:"tooltip"},x("div",{class:"md-tooltip__inner md-typeset"}))}function yn(...e){return x("div",{class:"md-tooltip2",role:"tooltip"},x("div",{class:"md-tooltip2__inner md-typeset"},e))}function En(e,t){if(t=t?`${t}_annotation_${e}`:void 0,t){let r=t?`#${t}`:void 0;return x("aside",{class:"md-annotation",tabIndex:0},Pt(t),x("a",{href:r,class:"md-annotation__index",tabIndex:-1},x("span",{"data-md-annotation-id":e})))}else return x("aside",{class:"md-annotation",tabIndex:0},Pt(t),x("span",{class:"md-annotation__index",tabIndex:-1},x("span",{"data-md-annotation-id":e})))}function wn(e){return x("button",{class:"md-clipboard md-icon",title:Ee("clipboard.copy"),"data-clipboard-target":`#${e} > code`})}function qr(e,t){let r=t&2,o=t&1,n=Object.keys(e.terms).filter(p=>!e.terms[p]).reduce((p,c)=>[...p,x("del",null,c)," "],[]).slice(0,-1),i=ye(),a=new URL(e.location,i.base);B("search.highlight")&&a.searchParams.set("h",Object.entries(e.terms).filter(([,p])=>p).reduce((p,[c])=>`${p} ${c}`.trim(),""));let{tags:s}=ye();return x("a",{href:`${a}`,class:"md-search-result__link",tabIndex:-1},x("article",{class:"md-search-result__article md-typeset","data-md-score":e.score.toFixed(2)},r>0&&x("div",{class:"md-search-result__icon md-icon"}),r>0&&x("h1",null,e.title),r<=0&&x("h2",null,e.title),o>0&&e.text.length>0&&e.text,e.tags&&e.tags.map(p=>{let c=s?p in s?`md-tag-icon md-tag--${s[p]}`:"md-tag-icon":"";return x("span",{class:`md-tag ${c}`},p)}),o>0&&n.length>0&&x("p",{class:"md-search-result__terms"},Ee("search.result.term.missing"),": ",...n)))}function Tn(e){let t=e[0].score,r=[...e],o=ye(),n=r.findIndex(l=>!`${new URL(l.location,o.base)}`.includes("#")),[i]=r.splice(n,1),a=r.findIndex(l=>l.scoreqr(l,1)),...p.length?[x("details",{class:"md-search-result__more"},x("summary",{tabIndex:-1},x("div",null,p.length>0&&p.length===1?Ee("search.result.more.one"):Ee("search.result.more.other",p.length))),...p.map(l=>qr(l,1)))]:[]];return x("li",{class:"md-search-result__item"},c)}function Sn(e){return x("ul",{class:"md-source__facts"},Object.entries(e).map(([t,r])=>x("li",{class:`md-source__fact md-source__fact--${t}`},typeof r=="number"?sr(r):r)))}function Qr(e){let t=`tabbed-control tabbed-control--${e}`;return x("div",{class:t,hidden:!0},x("button",{class:"tabbed-button",tabIndex:-1,"aria-hidden":"true"}))}function On(e){return x("div",{class:"md-typeset__scrollwrap"},x("div",{class:"md-typeset__table"},e))}function Ca(e){var o;let t=ye(),r=new URL(`../${e.version}/`,t.base);return x("li",{class:"md-version__item"},x("a",{href:`${r}`,class:"md-version__link"},e.title,((o=t.version)==null?void 0:o.alias)&&e.aliases.length>0&&x("span",{class:"md-version__alias"},e.aliases[0])))}function Mn(e,t){var o;let r=ye();return e=e.filter(n=>{var i;return!((i=n.properties)!=null&&i.hidden)}),x("div",{class:"md-version"},x("button",{class:"md-version__current","aria-label":Ee("select.version")},t.title,((o=r.version)==null?void 0:o.alias)&&t.aliases.length>0&&x("span",{class:"md-version__alias"},t.aliases[0])),x("ul",{class:"md-version__list"},e.map(Ca)))}var Ha=0;function ka(e){let t=z([et(e),kt(e)]).pipe(m(([o,n])=>o||n),K()),r=C(()=>Jo(e)).pipe(oe(De),ct(1),m(()=>Xo(e)));return t.pipe(Ae(o=>o),v(()=>z([t,r])),m(([o,n])=>({active:o,offset:n})),pe())}function $a(e,t){let{content$:r,viewport$:o}=t,n=`__tooltip2_${Ha++}`;return C(()=>{let i=new g,a=new _r(!1);i.pipe(X(),ne(!1)).subscribe(a);let s=a.pipe(Ht(c=>Me(+!c*250,Hr)),K(),v(c=>c?r:O),E(c=>c.id=n),pe());z([i.pipe(m(({active:c})=>c)),s.pipe(v(c=>kt(c,250)),Q(!1))]).pipe(m(c=>c.some(l=>l))).subscribe(a);let p=a.pipe(b(c=>c),ee(s,o),m(([c,l,{size:f}])=>{let u=e.getBoundingClientRect(),h=u.width/2;if(l.role==="tooltip")return{x:h,y:8+u.height};if(u.y>=f.height/2){let{height:w}=ce(l);return{x:h,y:-16-w}}else return{x:h,y:16+u.height}}));return z([s,i,p]).subscribe(([c,{offset:l},f])=>{c.style.setProperty("--md-tooltip-host-x",`${l.x}px`),c.style.setProperty("--md-tooltip-host-y",`${l.y}px`),c.style.setProperty("--md-tooltip-x",`${f.x}px`),c.style.setProperty("--md-tooltip-y",`${f.y}px`),c.classList.toggle("md-tooltip2--top",f.y<0),c.classList.toggle("md-tooltip2--bottom",f.y>=0)}),a.pipe(b(c=>c),ee(s,(c,l)=>l),b(c=>c.role==="tooltip")).subscribe(c=>{let l=ce(P(":scope > *",c));c.style.setProperty("--md-tooltip-width",`${l.width}px`),c.style.setProperty("--md-tooltip-tail","0px")}),a.pipe(K(),be(me),ee(s)).subscribe(([c,l])=>{l.classList.toggle("md-tooltip2--active",c)}),z([a.pipe(b(c=>c)),s]).subscribe(([c,l])=>{l.role==="dialog"?(e.setAttribute("aria-controls",n),e.setAttribute("aria-haspopup","dialog")):e.setAttribute("aria-describedby",n)}),a.pipe(b(c=>!c)).subscribe(()=>{e.removeAttribute("aria-controls"),e.removeAttribute("aria-describedby"),e.removeAttribute("aria-haspopup")}),ka(e).pipe(E(c=>i.next(c)),L(()=>i.complete()),m(c=>R({ref:e},c)))})}function lt(e,{viewport$:t},r=document.body){return $a(e,{content$:new F(o=>{let n=e.title,i=yn(n);return o.next(i),e.removeAttribute("title"),r.append(i),()=>{i.remove(),e.setAttribute("title",n)}}),viewport$:t})}function Pa(e,t){let r=C(()=>z([Zo(e),De(t)])).pipe(m(([{x:o,y:n},i])=>{let{width:a,height:s}=ce(e);return{x:o-i.x+a/2,y:n-i.y+s/2}}));return et(e).pipe(v(o=>r.pipe(m(n=>({active:o,offset:n})),Te(+!o||1/0))))}function Ln(e,t,{target$:r}){let[o,n]=Array.from(e.children);return C(()=>{let i=new g,a=i.pipe(X(),ne(!0));return i.subscribe({next({offset:s}){e.style.setProperty("--md-tooltip-x",`${s.x}px`),e.style.setProperty("--md-tooltip-y",`${s.y}px`)},complete(){e.style.removeProperty("--md-tooltip-x"),e.style.removeProperty("--md-tooltip-y")}}),tt(e).pipe(U(a)).subscribe(s=>{e.toggleAttribute("data-md-visible",s)}),S(i.pipe(b(({active:s})=>s)),i.pipe(_e(250),b(({active:s})=>!s))).subscribe({next({active:s}){s?e.prepend(o):o.remove()},complete(){e.prepend(o)}}),i.pipe(Le(16,me)).subscribe(({active:s})=>{o.classList.toggle("md-tooltip--active",s)}),i.pipe(ct(125,me),b(()=>!!e.offsetParent),m(()=>e.offsetParent.getBoundingClientRect()),m(({x:s})=>s)).subscribe({next(s){s?e.style.setProperty("--md-tooltip-0",`${-s}px`):e.style.removeProperty("--md-tooltip-0")},complete(){e.style.removeProperty("--md-tooltip-0")}}),d(n,"click").pipe(U(a),b(s=>!(s.metaKey||s.ctrlKey))).subscribe(s=>{s.stopPropagation(),s.preventDefault()}),d(n,"mousedown").pipe(U(a),ee(i)).subscribe(([s,{active:p}])=>{var c;if(s.button!==0||s.metaKey||s.ctrlKey)s.preventDefault();else if(p){s.preventDefault();let l=e.parentElement.closest(".md-annotation");l instanceof HTMLElement?l.focus():(c=Re())==null||c.blur()}}),r.pipe(U(a),b(s=>s===o),Ge(125)).subscribe(()=>e.focus()),Pa(e,t).pipe(E(s=>i.next(s)),L(()=>i.complete()),m(s=>R({ref:e},s)))})}function Ra(e){return e.tagName==="CODE"?$(".c, .c1, .cm",e):[e]}function Ia(e){let t=[];for(let r of Ra(e)){let o=[],n=document.createNodeIterator(r,NodeFilter.SHOW_TEXT);for(let i=n.nextNode();i;i=n.nextNode())o.push(i);for(let i of o){let a;for(;a=/(\(\d+\))(!)?/.exec(i.textContent);){let[,s,p]=a;if(typeof p=="undefined"){let c=i.splitText(a.index);i=c.splitText(s.length),t.push(c)}else{i.textContent=s,t.push(i);break}}}}return t}function _n(e,t){t.append(...Array.from(e.childNodes))}function fr(e,t,{target$:r,print$:o}){let n=t.closest("[id]"),i=n==null?void 0:n.id,a=new Map;for(let s of Ia(t)){let[,p]=s.textContent.match(/\((\d+)\)/);fe(`:scope > li:nth-child(${p})`,e)&&(a.set(p,En(p,i)),s.replaceWith(a.get(p)))}return a.size===0?O:C(()=>{let s=new g,p=s.pipe(X(),ne(!0)),c=[];for(let[l,f]of a)c.push([P(".md-typeset",f),P(`:scope > li:nth-child(${l})`,e)]);return o.pipe(U(p)).subscribe(l=>{e.hidden=!l,e.classList.toggle("md-annotation-list",l);for(let[f,u]of c)l?_n(f,u):_n(u,f)}),S(...[...a].map(([,l])=>Ln(l,t,{target$:r}))).pipe(L(()=>s.complete()),pe())})}function An(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return An(t)}}function Cn(e,t){return C(()=>{let r=An(e);return typeof r!="undefined"?fr(r,e,t):O})}var Hn=Vt(Yr());var Fa=0;function kn(e){if(e.nextElementSibling){let t=e.nextElementSibling;if(t.tagName==="OL")return t;if(t.tagName==="P"&&!t.children.length)return kn(t)}}function ja(e){return ge(e).pipe(m(({width:t})=>({scrollable:Tt(e).width>t})),Z("scrollable"))}function $n(e,t){let{matches:r}=matchMedia("(hover)"),o=C(()=>{let n=new g,i=n.pipe(Fr(1));n.subscribe(({scrollable:c})=>{c&&r?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")});let a=[];if(Hn.default.isSupported()&&(e.closest(".copy")||B("content.code.copy")&&!e.closest(".no-copy"))){let c=e.closest("pre");c.id=`__code_${Fa++}`;let l=wn(c.id);c.insertBefore(l,e),B("content.tooltips")&&a.push(lt(l,{viewport$}))}let s=e.closest(".highlight");if(s instanceof HTMLElement){let c=kn(s);if(typeof c!="undefined"&&(s.classList.contains("annotate")||B("content.code.annotate"))){let l=fr(c,e,t);a.push(ge(s).pipe(U(i),m(({width:f,height:u})=>f&&u),K(),v(f=>f?l:O)))}}return $(":scope > span[id]",e).length&&e.classList.add("md-code__content"),ja(e).pipe(E(c=>n.next(c)),L(()=>n.complete()),m(c=>R({ref:e},c)),Pe(...a))});return B("content.lazy")?tt(e).pipe(b(n=>n),Te(1),v(()=>o)):o}function Wa(e,{target$:t,print$:r}){let o=!0;return S(t.pipe(m(n=>n.closest("details:not([open])")),b(n=>e===n),m(()=>({action:"open",reveal:!0}))),r.pipe(b(n=>n||!o),E(()=>o=e.open),m(n=>({action:n?"open":"close"}))))}function Pn(e,t){return C(()=>{let r=new g;return r.subscribe(({action:o,reveal:n})=>{e.toggleAttribute("open",o==="open"),n&&e.scrollIntoView()}),Wa(e,t).pipe(E(o=>r.next(o)),L(()=>r.complete()),m(o=>R({ref:e},o)))})}var Rn=".node circle,.node ellipse,.node path,.node polygon,.node rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}marker{fill:var(--md-mermaid-edge-color)!important}.edgeLabel .label rect{fill:#0000}.label{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.label foreignObject{line-height:normal;overflow:visible}.label div .edgeLabel{color:var(--md-mermaid-label-fg-color)}.edgeLabel,.edgeLabel rect,.label div .edgeLabel{background-color:var(--md-mermaid-label-bg-color)}.edgeLabel,.edgeLabel rect{fill:var(--md-mermaid-label-bg-color);color:var(--md-mermaid-edge-color)}.edgePath .path,.flowchart-link{stroke:var(--md-mermaid-edge-color);stroke-width:.05rem}.edgePath .arrowheadPath{fill:var(--md-mermaid-edge-color);stroke:none}.cluster rect{fill:var(--md-default-fg-color--lightest);stroke:var(--md-default-fg-color--lighter)}.cluster span{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}g #flowchart-circleEnd,g #flowchart-circleStart,g #flowchart-crossEnd,g #flowchart-crossStart,g #flowchart-pointEnd,g #flowchart-pointStart{stroke:none}g.classGroup line,g.classGroup rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}g.classGroup text{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.classLabel .box{fill:var(--md-mermaid-label-bg-color);background-color:var(--md-mermaid-label-bg-color);opacity:1}.classLabel .label{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.node .divider{stroke:var(--md-mermaid-node-fg-color)}.relation{stroke:var(--md-mermaid-edge-color)}.cardinality{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.cardinality text{fill:inherit!important}defs #classDiagram-compositionEnd,defs #classDiagram-compositionStart,defs #classDiagram-dependencyEnd,defs #classDiagram-dependencyStart,defs #classDiagram-extensionEnd,defs #classDiagram-extensionStart{fill:var(--md-mermaid-edge-color)!important;stroke:var(--md-mermaid-edge-color)!important}defs #classDiagram-aggregationEnd,defs #classDiagram-aggregationStart{fill:var(--md-mermaid-label-bg-color)!important;stroke:var(--md-mermaid-edge-color)!important}g.stateGroup rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}g.stateGroup .state-title{fill:var(--md-mermaid-label-fg-color)!important;font-family:var(--md-mermaid-font-family)}g.stateGroup .composit{fill:var(--md-mermaid-label-bg-color)}.nodeLabel,.nodeLabel p{color:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}a .nodeLabel{text-decoration:underline}.node circle.state-end,.node circle.state-start,.start-state{fill:var(--md-mermaid-edge-color);stroke:none}.end-state-inner,.end-state-outer{fill:var(--md-mermaid-edge-color)}.end-state-inner,.node circle.state-end{stroke:var(--md-mermaid-label-bg-color)}.transition{stroke:var(--md-mermaid-edge-color)}[id^=state-fork] rect,[id^=state-join] rect{fill:var(--md-mermaid-edge-color)!important;stroke:none!important}.statediagram-cluster.statediagram-cluster .inner{fill:var(--md-default-bg-color)}.statediagram-cluster rect{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}.statediagram-state rect.divider{fill:var(--md-default-fg-color--lightest);stroke:var(--md-default-fg-color--lighter)}defs #statediagram-barbEnd{stroke:var(--md-mermaid-edge-color)}.attributeBoxEven,.attributeBoxOdd{fill:var(--md-mermaid-node-bg-color);stroke:var(--md-mermaid-node-fg-color)}.entityBox{fill:var(--md-mermaid-label-bg-color);stroke:var(--md-mermaid-node-fg-color)}.entityLabel{fill:var(--md-mermaid-label-fg-color);font-family:var(--md-mermaid-font-family)}.relationshipLabelBox{fill:var(--md-mermaid-label-bg-color);fill-opacity:1;background-color:var(--md-mermaid-label-bg-color);opacity:1}.relationshipLabel{fill:var(--md-mermaid-label-fg-color)}.relationshipLine{stroke:var(--md-mermaid-edge-color)}defs #ONE_OR_MORE_END *,defs #ONE_OR_MORE_START *,defs #ONLY_ONE_END *,defs #ONLY_ONE_START *,defs #ZERO_OR_MORE_END *,defs #ZERO_OR_MORE_START *,defs #ZERO_OR_ONE_END *,defs #ZERO_OR_ONE_START *{stroke:var(--md-mermaid-edge-color)!important}defs #ZERO_OR_MORE_END circle,defs #ZERO_OR_MORE_START circle{fill:var(--md-mermaid-label-bg-color)}.actor{fill:var(--md-mermaid-sequence-actor-bg-color);stroke:var(--md-mermaid-sequence-actor-border-color)}text.actor>tspan{fill:var(--md-mermaid-sequence-actor-fg-color);font-family:var(--md-mermaid-font-family)}line{stroke:var(--md-mermaid-sequence-actor-line-color)}.actor-man circle,.actor-man line{fill:var(--md-mermaid-sequence-actorman-bg-color);stroke:var(--md-mermaid-sequence-actorman-line-color)}.messageLine0,.messageLine1{stroke:var(--md-mermaid-sequence-message-line-color)}.note{fill:var(--md-mermaid-sequence-note-bg-color);stroke:var(--md-mermaid-sequence-note-border-color)}.loopText,.loopText>tspan,.messageText,.noteText>tspan{stroke:none;font-family:var(--md-mermaid-font-family)!important}.messageText{fill:var(--md-mermaid-sequence-message-fg-color)}.loopText,.loopText>tspan{fill:var(--md-mermaid-sequence-loop-fg-color)}.noteText>tspan{fill:var(--md-mermaid-sequence-note-fg-color)}#arrowhead path{fill:var(--md-mermaid-sequence-message-line-color);stroke:none}.loopLine{fill:var(--md-mermaid-sequence-loop-bg-color);stroke:var(--md-mermaid-sequence-loop-border-color)}.labelBox{fill:var(--md-mermaid-sequence-label-bg-color);stroke:none}.labelText,.labelText>span{fill:var(--md-mermaid-sequence-label-fg-color);font-family:var(--md-mermaid-font-family)}.sequenceNumber{fill:var(--md-mermaid-sequence-number-fg-color)}rect.rect{fill:var(--md-mermaid-sequence-box-bg-color);stroke:none}rect.rect+text.text{fill:var(--md-mermaid-sequence-box-fg-color)}defs #sequencenumber{fill:var(--md-mermaid-sequence-number-bg-color)!important}";var Br,Da=0;function Va(){return typeof mermaid=="undefined"||mermaid instanceof Element?wt("https://unpkg.com/mermaid@10/dist/mermaid.min.js"):I(void 0)}function In(e){return e.classList.remove("mermaid"),Br||(Br=Va().pipe(E(()=>mermaid.initialize({startOnLoad:!1,themeCSS:Rn,sequence:{actorFontSize:"16px",messageFontSize:"16px",noteFontSize:"16px"}})),m(()=>{}),G(1))),Br.subscribe(()=>ao(this,null,function*(){e.classList.add("mermaid");let t=`__mermaid_${Da++}`,r=x("div",{class:"mermaid"}),o=e.textContent,{svg:n,fn:i}=yield mermaid.render(t,o),a=r.attachShadow({mode:"closed"});a.innerHTML=n,e.replaceWith(r),i==null||i(a)})),Br.pipe(m(()=>({ref:e})))}var Fn=x("table");function jn(e){return e.replaceWith(Fn),Fn.replaceWith(On(e)),I({ref:e})}function Na(e){let t=e.find(r=>r.checked)||e[0];return S(...e.map(r=>d(r,"change").pipe(m(()=>P(`label[for="${r.id}"]`))))).pipe(Q(P(`label[for="${t.id}"]`)),m(r=>({active:r})))}function Wn(e,{viewport$:t,target$:r}){let o=P(".tabbed-labels",e),n=$(":scope > input",e),i=Qr("prev");e.append(i);let a=Qr("next");return e.append(a),C(()=>{let s=new g,p=s.pipe(X(),ne(!0));z([s,ge(e),tt(e)]).pipe(U(p),Le(1,me)).subscribe({next([{active:c},l]){let f=Ue(c),{width:u}=ce(c);e.style.setProperty("--md-indicator-x",`${f.x}px`),e.style.setProperty("--md-indicator-width",`${u}px`);let h=pr(o);(f.xh.x+l.width)&&o.scrollTo({left:Math.max(0,f.x-16),behavior:"smooth"})},complete(){e.style.removeProperty("--md-indicator-x"),e.style.removeProperty("--md-indicator-width")}}),z([De(o),ge(o)]).pipe(U(p)).subscribe(([c,l])=>{let f=Tt(o);i.hidden=c.x<16,a.hidden=c.x>f.width-l.width-16}),S(d(i,"click").pipe(m(()=>-1)),d(a,"click").pipe(m(()=>1))).pipe(U(p)).subscribe(c=>{let{width:l}=ce(o);o.scrollBy({left:l*c,behavior:"smooth"})}),r.pipe(U(p),b(c=>n.includes(c))).subscribe(c=>c.click()),o.classList.add("tabbed-labels--linked");for(let c of n){let l=P(`label[for="${c.id}"]`);l.replaceChildren(x("a",{href:`#${l.htmlFor}`,tabIndex:-1},...Array.from(l.childNodes))),d(l.firstElementChild,"click").pipe(U(p),b(f=>!(f.metaKey||f.ctrlKey)),E(f=>{f.preventDefault(),f.stopPropagation()})).subscribe(()=>{history.replaceState({},"",`#${l.htmlFor}`),l.click()})}return B("content.tabs.link")&&s.pipe(Ce(1),ee(t)).subscribe(([{active:c},{offset:l}])=>{let f=c.innerText.trim();if(c.hasAttribute("data-md-switching"))c.removeAttribute("data-md-switching");else{let u=e.offsetTop-l.y;for(let w of $("[data-tabs]"))for(let A of $(":scope > input",w)){let te=P(`label[for="${A.id}"]`);if(te!==c&&te.innerText.trim()===f){te.setAttribute("data-md-switching",""),A.click();break}}window.scrollTo({top:e.offsetTop-u});let h=__md_get("__tabs")||[];__md_set("__tabs",[...new Set([f,...h])])}}),s.pipe(U(p)).subscribe(()=>{for(let c of $("audio, video",e))c.pause()}),Na(n).pipe(E(c=>s.next(c)),L(()=>s.complete()),m(c=>R({ref:e},c)))}).pipe(Qe(se))}function Un(e,{viewport$:t,target$:r,print$:o}){return S(...$(".annotate:not(.highlight)",e).map(n=>Cn(n,{target$:r,print$:o})),...$("pre:not(.mermaid) > code",e).map(n=>$n(n,{target$:r,print$:o})),...$("pre.mermaid",e).map(n=>In(n)),...$("table:not([class])",e).map(n=>jn(n)),...$("details",e).map(n=>Pn(n,{target$:r,print$:o})),...$("[data-tabs]",e).map(n=>Wn(n,{viewport$:t,target$:r})),...$("[title]",e).filter(()=>B("content.tooltips")).map(n=>lt(n,{viewport$:t})))}function za(e,{alert$:t}){return t.pipe(v(r=>S(I(!0),I(!1).pipe(Ge(2e3))).pipe(m(o=>({message:r,active:o})))))}function Dn(e,t){let r=P(".md-typeset",e);return C(()=>{let o=new g;return o.subscribe(({message:n,active:i})=>{e.classList.toggle("md-dialog--active",i),r.textContent=n}),za(e,t).pipe(E(n=>o.next(n)),L(()=>o.complete()),m(n=>R({ref:e},n)))})}var qa=0;function Qa(e,t){document.body.append(e);let{width:r}=ce(e);e.style.setProperty("--md-tooltip-width",`${r}px`),e.remove();let o=cr(t),n=typeof o!="undefined"?De(o):I({x:0,y:0}),i=S(et(t),kt(t)).pipe(K());return z([i,n]).pipe(m(([a,s])=>{let{x:p,y:c}=Ue(t),l=ce(t),f=t.closest("table");return f&&t.parentElement&&(p+=f.offsetLeft+t.parentElement.offsetLeft,c+=f.offsetTop+t.parentElement.offsetTop),{active:a,offset:{x:p-s.x+l.width/2-r/2,y:c-s.y+l.height+8}}}))}function Vn(e){let t=e.title;if(!t.length)return O;let r=`__tooltip_${qa++}`,o=Pt(r,"inline"),n=P(".md-typeset",o);return n.innerHTML=t,C(()=>{let i=new g;return i.subscribe({next({offset:a}){o.style.setProperty("--md-tooltip-x",`${a.x}px`),o.style.setProperty("--md-tooltip-y",`${a.y}px`)},complete(){o.style.removeProperty("--md-tooltip-x"),o.style.removeProperty("--md-tooltip-y")}}),S(i.pipe(b(({active:a})=>a)),i.pipe(_e(250),b(({active:a})=>!a))).subscribe({next({active:a}){a?(e.insertAdjacentElement("afterend",o),e.setAttribute("aria-describedby",r),e.removeAttribute("title")):(o.remove(),e.removeAttribute("aria-describedby"),e.setAttribute("title",t))},complete(){o.remove(),e.removeAttribute("aria-describedby"),e.setAttribute("title",t)}}),i.pipe(Le(16,me)).subscribe(({active:a})=>{o.classList.toggle("md-tooltip--active",a)}),i.pipe(ct(125,me),b(()=>!!e.offsetParent),m(()=>e.offsetParent.getBoundingClientRect()),m(({x:a})=>a)).subscribe({next(a){a?o.style.setProperty("--md-tooltip-0",`${-a}px`):o.style.removeProperty("--md-tooltip-0")},complete(){o.style.removeProperty("--md-tooltip-0")}}),Qa(o,e).pipe(E(a=>i.next(a)),L(()=>i.complete()),m(a=>R({ref:e},a)))}).pipe(Qe(se))}function Ka({viewport$:e}){if(!B("header.autohide"))return I(!1);let t=e.pipe(m(({offset:{y:n}})=>n),Ye(2,1),m(([n,i])=>[nMath.abs(i-n.y)>100),m(([,[n]])=>n),K()),o=Ve("search");return z([e,o]).pipe(m(([{offset:n},i])=>n.y>400&&!i),K(),v(n=>n?r:I(!1)),Q(!1))}function Nn(e,t){return C(()=>z([ge(e),Ka(t)])).pipe(m(([{height:r},o])=>({height:r,hidden:o})),K((r,o)=>r.height===o.height&&r.hidden===o.hidden),G(1))}function zn(e,{header$:t,main$:r}){return C(()=>{let o=new g,n=o.pipe(X(),ne(!0));o.pipe(Z("active"),We(t)).subscribe(([{active:a},{hidden:s}])=>{e.classList.toggle("md-header--shadow",a&&!s),e.hidden=s});let i=ue($("[title]",e)).pipe(b(()=>B("content.tooltips")),oe(a=>Vn(a)));return r.subscribe(o),t.pipe(U(n),m(a=>R({ref:e},a)),Pe(i.pipe(U(n))))})}function Ya(e,{viewport$:t,header$:r}){return mr(e,{viewport$:t,header$:r}).pipe(m(({offset:{y:o}})=>{let{height:n}=ce(e);return{active:o>=n}}),Z("active"))}function qn(e,t){return C(()=>{let r=new g;r.subscribe({next({active:n}){e.classList.toggle("md-header__title--active",n)},complete(){e.classList.remove("md-header__title--active")}});let o=fe(".md-content h1");return typeof o=="undefined"?O:Ya(o,t).pipe(E(n=>r.next(n)),L(()=>r.complete()),m(n=>R({ref:e},n)))})}function Qn(e,{viewport$:t,header$:r}){let o=r.pipe(m(({height:i})=>i),K()),n=o.pipe(v(()=>ge(e).pipe(m(({height:i})=>({top:e.offsetTop,bottom:e.offsetTop+i})),Z("bottom"))));return z([o,n,t]).pipe(m(([i,{top:a,bottom:s},{offset:{y:p},size:{height:c}}])=>(c=Math.max(0,c-Math.max(0,a-p,i)-Math.max(0,c+p-s)),{offset:a-i,height:c,active:a-i<=p})),K((i,a)=>i.offset===a.offset&&i.height===a.height&&i.active===a.active))}function Ba(e){let t=__md_get("__palette")||{index:e.findIndex(o=>matchMedia(o.getAttribute("data-md-color-media")).matches)},r=Math.max(0,Math.min(t.index,e.length-1));return I(...e).pipe(oe(o=>d(o,"change").pipe(m(()=>o))),Q(e[r]),m(o=>({index:e.indexOf(o),color:{media:o.getAttribute("data-md-color-media"),scheme:o.getAttribute("data-md-color-scheme"),primary:o.getAttribute("data-md-color-primary"),accent:o.getAttribute("data-md-color-accent")}})),G(1))}function Kn(e){let t=$("input",e),r=x("meta",{name:"theme-color"});document.head.appendChild(r);let o=x("meta",{name:"color-scheme"});document.head.appendChild(o);let n=$t("(prefers-color-scheme: light)");return C(()=>{let i=new g;return i.subscribe(a=>{if(document.body.setAttribute("data-md-color-switching",""),a.color.media==="(prefers-color-scheme)"){let s=matchMedia("(prefers-color-scheme: light)"),p=document.querySelector(s.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");a.color.scheme=p.getAttribute("data-md-color-scheme"),a.color.primary=p.getAttribute("data-md-color-primary"),a.color.accent=p.getAttribute("data-md-color-accent")}for(let[s,p]of Object.entries(a.color))document.body.setAttribute(`data-md-color-${s}`,p);for(let s=0;sa.key==="Enter"),ee(i,(a,s)=>s)).subscribe(({index:a})=>{a=(a+1)%t.length,t[a].click(),t[a].focus()}),i.pipe(m(()=>{let a=Se("header"),s=window.getComputedStyle(a);return o.content=s.colorScheme,s.backgroundColor.match(/\d+/g).map(p=>(+p).toString(16).padStart(2,"0")).join("")})).subscribe(a=>r.content=`#${a}`),i.pipe(be(se)).subscribe(()=>{document.body.removeAttribute("data-md-color-switching")}),Ba(t).pipe(U(n.pipe(Ce(1))),st(),E(a=>i.next(a)),L(()=>i.complete()),m(a=>R({ref:e},a)))})}function Yn(e,{progress$:t}){return C(()=>{let r=new g;return r.subscribe(({value:o})=>{e.style.setProperty("--md-progress-value",`${o}`)}),t.pipe(E(o=>r.next({value:o})),L(()=>r.complete()),m(o=>({ref:e,value:o})))})}var Gr=Vt(Yr());function Ga(e){e.setAttribute("data-md-copying","");let t=e.closest("[data-copy]"),r=t?t.getAttribute("data-copy"):e.innerText;return e.removeAttribute("data-md-copying"),r.trimEnd()}function Bn({alert$:e}){Gr.default.isSupported()&&new F(t=>{new Gr.default("[data-clipboard-target], [data-clipboard-text]",{text:r=>r.getAttribute("data-clipboard-text")||Ga(P(r.getAttribute("data-clipboard-target")))}).on("success",r=>t.next(r))}).pipe(E(t=>{t.trigger.focus()}),m(()=>Ee("clipboard.copied"))).subscribe(e)}function Gn(e,t){return e.protocol=t.protocol,e.hostname=t.hostname,e}function Ja(e,t){let r=new Map;for(let o of $("url",e)){let n=P("loc",o),i=[Gn(new URL(n.textContent),t)];r.set(`${i[0]}`,i);for(let a of $("[rel=alternate]",o)){let s=a.getAttribute("href");s!=null&&i.push(Gn(new URL(s),t))}}return r}function ur(e){return mn(new URL("sitemap.xml",e)).pipe(m(t=>Ja(t,new URL(e))),ve(()=>I(new Map)))}function Xa(e,t){if(!(e.target instanceof Element))return O;let r=e.target.closest("a");if(r===null)return O;if(r.target||e.metaKey||e.ctrlKey)return O;let o=new URL(r.href);return o.search=o.hash="",t.has(`${o}`)?(e.preventDefault(),I(new URL(r.href))):O}function Jn(e){let t=new Map;for(let r of $(":scope > *",e.head))t.set(r.outerHTML,r);return t}function Xn(e){for(let t of $("[href], [src]",e))for(let r of["href","src"]){let o=t.getAttribute(r);if(o&&!/^(?:[a-z]+:)?\/\//i.test(o)){t[r]=t[r];break}}return I(e)}function Za(e){for(let o of["[data-md-component=announce]","[data-md-component=container]","[data-md-component=header-topic]","[data-md-component=outdated]","[data-md-component=logo]","[data-md-component=skip]",...B("navigation.tabs.sticky")?["[data-md-component=tabs]"]:[]]){let n=fe(o),i=fe(o,e);typeof n!="undefined"&&typeof i!="undefined"&&n.replaceWith(i)}let t=Jn(document);for(let[o,n]of Jn(e))t.has(o)?t.delete(o):document.head.appendChild(n);for(let o of t.values()){let n=o.getAttribute("name");n!=="theme-color"&&n!=="color-scheme"&&o.remove()}let r=Se("container");return je($("script",r)).pipe(v(o=>{let n=e.createElement("script");if(o.src){for(let i of o.getAttributeNames())n.setAttribute(i,o.getAttribute(i));return o.replaceWith(n),new F(i=>{n.onload=()=>i.complete()})}else return n.textContent=o.textContent,o.replaceWith(n),O}),X(),ne(document))}function Zn({location$:e,viewport$:t,progress$:r}){let o=ye();if(location.protocol==="file:")return O;let n=ur(o.base);I(document).subscribe(Xn);let i=d(document.body,"click").pipe(We(n),v(([p,c])=>Xa(p,c)),pe()),a=d(window,"popstate").pipe(m(xe),pe());i.pipe(ee(t)).subscribe(([p,{offset:c}])=>{history.replaceState(c,""),history.pushState(null,"",p)}),S(i,a).subscribe(e);let s=e.pipe(Z("pathname"),v(p=>ln(p,{progress$:r}).pipe(ve(()=>(pt(p,!0),O)))),v(Xn),v(Za),pe());return S(s.pipe(ee(e,(p,c)=>c)),s.pipe(v(()=>e),Z("pathname"),v(()=>e),Z("hash")),e.pipe(K((p,c)=>p.pathname===c.pathname&&p.hash===c.hash),v(()=>i),E(()=>history.back()))).subscribe(p=>{var c,l;history.state!==null||!p.hash?window.scrollTo(0,(l=(c=history.state)==null?void 0:c.y)!=null?l:0):(history.scrollRestoration="auto",sn(p.hash),history.scrollRestoration="manual")}),e.subscribe(()=>{history.scrollRestoration="manual"}),d(window,"beforeunload").subscribe(()=>{history.scrollRestoration="auto"}),t.pipe(Z("offset"),_e(100)).subscribe(({offset:p})=>{history.replaceState(p,"")}),s}var ri=Vt(ti());function oi(e){let t=e.separator.split("|").map(n=>n.replace(/(\(\?[!=<][^)]+\))/g,"").length===0?"\uFFFD":n).join("|"),r=new RegExp(t,"img"),o=(n,i,a)=>`${i}${a}`;return n=>{n=n.replace(/[\s*+\-:~^]+/g," ").trim();let i=new RegExp(`(^|${e.separator}|)(${n.replace(/[|\\{}()[\]^$+*?.-]/g,"\\$&").replace(r,"|")})`,"img");return a=>(0,ri.default)(a).replace(i,o).replace(/<\/mark>(\s+)]*>/img,"$1")}}function It(e){return e.type===1}function dr(e){return e.type===3}function ni(e,t){let r=vn(e);return S(I(location.protocol!=="file:"),Ve("search")).pipe(Ae(o=>o),v(()=>t)).subscribe(({config:o,docs:n})=>r.next({type:0,data:{config:o,docs:n,options:{suggest:B("search.suggest")}}})),r}function ii({document$:e}){let t=ye(),r=Ne(new URL("../versions.json",t.base)).pipe(ve(()=>O)),o=r.pipe(m(n=>{let[,i]=t.base.match(/([^/]+)\/?$/);return n.find(({version:a,aliases:s})=>a===i||s.includes(i))||n[0]}));r.pipe(m(n=>new Map(n.map(i=>[`${new URL(`../${i.version}/`,t.base)}`,i]))),v(n=>d(document.body,"click").pipe(b(i=>!i.metaKey&&!i.ctrlKey),ee(o),v(([i,a])=>{if(i.target instanceof Element){let s=i.target.closest("a");if(s&&!s.target&&n.has(s.href)){let p=s.href;return!i.target.closest(".md-version")&&n.get(p)===a?O:(i.preventDefault(),I(p))}}return O}),v(i=>ur(new URL(i)).pipe(m(a=>{let p=xe().href.replace(t.base,i);return a.has(p.split("#")[0])?new URL(p):new URL(i)})))))).subscribe(n=>pt(n,!0)),z([r,o]).subscribe(([n,i])=>{P(".md-header__topic").appendChild(Mn(n,i))}),e.pipe(v(()=>o)).subscribe(n=>{var a;let i=__md_get("__outdated",sessionStorage);if(i===null){i=!0;let s=((a=t.version)==null?void 0:a.default)||"latest";Array.isArray(s)||(s=[s]);e:for(let p of s)for(let c of n.aliases.concat(n.version))if(new RegExp(p,"i").test(c)){i=!1;break e}__md_set("__outdated",i,sessionStorage)}if(i)for(let s of ae("outdated"))s.hidden=!1})}function ns(e,{worker$:t}){let{searchParams:r}=xe();r.has("q")&&(Je("search",!0),e.value=r.get("q"),e.focus(),Ve("search").pipe(Ae(i=>!i)).subscribe(()=>{let i=xe();i.searchParams.delete("q"),history.replaceState({},"",`${i}`)}));let o=et(e),n=S(t.pipe(Ae(It)),d(e,"keyup"),o).pipe(m(()=>e.value),K());return z([n,o]).pipe(m(([i,a])=>({value:i,focus:a})),G(1))}function ai(e,{worker$:t}){let r=new g,o=r.pipe(X(),ne(!0));z([t.pipe(Ae(It)),r],(i,a)=>a).pipe(Z("value")).subscribe(({value:i})=>t.next({type:2,data:i})),r.pipe(Z("focus")).subscribe(({focus:i})=>{i&&Je("search",i)}),d(e.form,"reset").pipe(U(o)).subscribe(()=>e.focus());let n=P("header [for=__search]");return d(n,"click").subscribe(()=>e.focus()),ns(e,{worker$:t}).pipe(E(i=>r.next(i)),L(()=>r.complete()),m(i=>R({ref:e},i)),G(1))}function si(e,{worker$:t,query$:r}){let o=new g,n=tn(e.parentElement).pipe(b(Boolean)),i=e.parentElement,a=P(":scope > :first-child",e),s=P(":scope > :last-child",e);Ve("search").subscribe(l=>s.setAttribute("role",l?"list":"presentation")),o.pipe(ee(r),Ur(t.pipe(Ae(It)))).subscribe(([{items:l},{value:f}])=>{switch(l.length){case 0:a.textContent=f.length?Ee("search.result.none"):Ee("search.result.placeholder");break;case 1:a.textContent=Ee("search.result.one");break;default:let u=sr(l.length);a.textContent=Ee("search.result.other",u)}});let p=o.pipe(E(()=>s.innerHTML=""),v(({items:l})=>S(I(...l.slice(0,10)),I(...l.slice(10)).pipe(Ye(4),Vr(n),v(([f])=>f)))),m(Tn),pe());return p.subscribe(l=>s.appendChild(l)),p.pipe(oe(l=>{let f=fe("details",l);return typeof f=="undefined"?O:d(f,"toggle").pipe(U(o),m(()=>f))})).subscribe(l=>{l.open===!1&&l.offsetTop<=i.scrollTop&&i.scrollTo({top:l.offsetTop})}),t.pipe(b(dr),m(({data:l})=>l)).pipe(E(l=>o.next(l)),L(()=>o.complete()),m(l=>R({ref:e},l)))}function is(e,{query$:t}){return t.pipe(m(({value:r})=>{let o=xe();return o.hash="",r=r.replace(/\s+/g,"+").replace(/&/g,"%26").replace(/=/g,"%3D"),o.search=`q=${r}`,{url:o}}))}function ci(e,t){let r=new g,o=r.pipe(X(),ne(!0));return r.subscribe(({url:n})=>{e.setAttribute("data-clipboard-text",e.href),e.href=`${n}`}),d(e,"click").pipe(U(o)).subscribe(n=>n.preventDefault()),is(e,t).pipe(E(n=>r.next(n)),L(()=>r.complete()),m(n=>R({ref:e},n)))}function pi(e,{worker$:t,keyboard$:r}){let o=new g,n=Se("search-query"),i=S(d(n,"keydown"),d(n,"focus")).pipe(be(se),m(()=>n.value),K());return o.pipe(We(i),m(([{suggest:s},p])=>{let c=p.split(/([\s-]+)/);if(s!=null&&s.length&&c[c.length-1]){let l=s[s.length-1];l.startsWith(c[c.length-1])&&(c[c.length-1]=l)}else c.length=0;return c})).subscribe(s=>e.innerHTML=s.join("").replace(/\s/g," ")),r.pipe(b(({mode:s})=>s==="search")).subscribe(s=>{switch(s.type){case"ArrowRight":e.innerText.length&&n.selectionStart===n.value.length&&(n.value=e.innerText);break}}),t.pipe(b(dr),m(({data:s})=>s)).pipe(E(s=>o.next(s)),L(()=>o.complete()),m(()=>({ref:e})))}function li(e,{index$:t,keyboard$:r}){let o=ye();try{let n=ni(o.search,t),i=Se("search-query",e),a=Se("search-result",e);d(e,"click").pipe(b(({target:p})=>p instanceof Element&&!!p.closest("a"))).subscribe(()=>Je("search",!1)),r.pipe(b(({mode:p})=>p==="search")).subscribe(p=>{let c=Re();switch(p.type){case"Enter":if(c===i){let l=new Map;for(let f of $(":first-child [href]",a)){let u=f.firstElementChild;l.set(f,parseFloat(u.getAttribute("data-md-score")))}if(l.size){let[[f]]=[...l].sort(([,u],[,h])=>h-u);f.click()}p.claim()}break;case"Escape":case"Tab":Je("search",!1),i.blur();break;case"ArrowUp":case"ArrowDown":if(typeof c=="undefined")i.focus();else{let l=[i,...$(":not(details) > [href], summary, details[open] [href]",a)],f=Math.max(0,(Math.max(0,l.indexOf(c))+l.length+(p.type==="ArrowUp"?-1:1))%l.length);l[f].focus()}p.claim();break;default:i!==Re()&&i.focus()}}),r.pipe(b(({mode:p})=>p==="global")).subscribe(p=>{switch(p.type){case"f":case"s":case"/":i.focus(),i.select(),p.claim();break}});let s=ai(i,{worker$:n});return S(s,si(a,{worker$:n,query$:s})).pipe(Pe(...ae("search-share",e).map(p=>ci(p,{query$:s})),...ae("search-suggest",e).map(p=>pi(p,{worker$:n,keyboard$:r}))))}catch(n){return e.hidden=!0,Ke}}function mi(e,{index$:t,location$:r}){return z([t,r.pipe(Q(xe()),b(o=>!!o.searchParams.get("h")))]).pipe(m(([o,n])=>oi(o.config)(n.searchParams.get("h"))),m(o=>{var a;let n=new Map,i=document.createNodeIterator(e,NodeFilter.SHOW_TEXT);for(let s=i.nextNode();s;s=i.nextNode())if((a=s.parentElement)!=null&&a.offsetHeight){let p=s.textContent,c=o(p);c.length>p.length&&n.set(s,c)}for(let[s,p]of n){let{childNodes:c}=x("span",null,p);s.replaceWith(...Array.from(c))}return{ref:e,nodes:n}}))}function as(e,{viewport$:t,main$:r}){let o=e.closest(".md-grid"),n=o.offsetTop-o.parentElement.offsetTop;return z([r,t]).pipe(m(([{offset:i,height:a},{offset:{y:s}}])=>(a=a+Math.min(n,Math.max(0,s-i))-n,{height:a,locked:s>=i+n})),K((i,a)=>i.height===a.height&&i.locked===a.locked))}function Jr(e,o){var n=o,{header$:t}=n,r=io(n,["header$"]);let i=P(".md-sidebar__scrollwrap",e),{y:a}=Ue(i);return C(()=>{let s=new g,p=s.pipe(X(),ne(!0)),c=s.pipe(Le(0,me));return c.pipe(ee(t)).subscribe({next([{height:l},{height:f}]){i.style.height=`${l-2*a}px`,e.style.top=`${f}px`},complete(){i.style.height="",e.style.top=""}}),c.pipe(Ae()).subscribe(()=>{for(let l of $(".md-nav__link--active[href]",e)){if(!l.clientHeight)continue;let f=l.closest(".md-sidebar__scrollwrap");if(typeof f!="undefined"){let u=l.offsetTop-f.offsetTop,{height:h}=ce(f);f.scrollTo({top:u-h/2})}}}),ue($("label[tabindex]",e)).pipe(oe(l=>d(l,"click").pipe(be(se),m(()=>l),U(p)))).subscribe(l=>{let f=P(`[id="${l.htmlFor}"]`);P(`[aria-labelledby="${l.id}"]`).setAttribute("aria-expanded",`${f.checked}`)}),as(e,r).pipe(E(l=>s.next(l)),L(()=>s.complete()),m(l=>R({ref:e},l)))})}function fi(e,t){if(typeof t!="undefined"){let r=`https://api.github.com/repos/${e}/${t}`;return Ct(Ne(`${r}/releases/latest`).pipe(ve(()=>O),m(o=>({version:o.tag_name})),Be({})),Ne(r).pipe(ve(()=>O),m(o=>({stars:o.stargazers_count,forks:o.forks_count})),Be({}))).pipe(m(([o,n])=>R(R({},o),n)))}else{let r=`https://api.github.com/users/${e}`;return Ne(r).pipe(m(o=>({repositories:o.public_repos})),Be({}))}}function ui(e,t){let r=`https://${e}/api/v4/projects/${encodeURIComponent(t)}`;return Ne(r).pipe(ve(()=>O),m(({star_count:o,forks_count:n})=>({stars:o,forks:n})),Be({}))}function di(e){let t=e.match(/^.+github\.com\/([^/]+)\/?([^/]+)?/i);if(t){let[,r,o]=t;return fi(r,o)}if(t=e.match(/^.+?([^/]*gitlab[^/]+)\/(.+?)\/?$/i),t){let[,r,o]=t;return ui(r,o)}return O}var ss;function cs(e){return ss||(ss=C(()=>{let t=__md_get("__source",sessionStorage);if(t)return I(t);if(ae("consent").length){let o=__md_get("__consent");if(!(o&&o.github))return O}return di(e.href).pipe(E(o=>__md_set("__source",o,sessionStorage)))}).pipe(ve(()=>O),b(t=>Object.keys(t).length>0),m(t=>({facts:t})),G(1)))}function hi(e){let t=P(":scope > :last-child",e);return C(()=>{let r=new g;return r.subscribe(({facts:o})=>{t.appendChild(Sn(o)),t.classList.add("md-source__repository--active")}),cs(e).pipe(E(o=>r.next(o)),L(()=>r.complete()),m(o=>R({ref:e},o)))})}function ps(e,{viewport$:t,header$:r}){return ge(document.body).pipe(v(()=>mr(e,{header$:r,viewport$:t})),m(({offset:{y:o}})=>({hidden:o>=10})),Z("hidden"))}function bi(e,t){return C(()=>{let r=new g;return r.subscribe({next({hidden:o}){e.hidden=o},complete(){e.hidden=!1}}),(B("navigation.tabs.sticky")?I({hidden:!1}):ps(e,t)).pipe(E(o=>r.next(o)),L(()=>r.complete()),m(o=>R({ref:e},o)))})}function ls(e,{viewport$:t,header$:r}){let o=new Map,n=$(".md-nav__link",e);for(let s of n){let p=decodeURIComponent(s.hash.substring(1)),c=fe(`[id="${p}"]`);typeof c!="undefined"&&o.set(s,c)}let i=r.pipe(Z("height"),m(({height:s})=>{let p=Se("main"),c=P(":scope > :first-child",p);return s+.8*(c.offsetTop-p.offsetTop)}),pe());return ge(document.body).pipe(Z("height"),v(s=>C(()=>{let p=[];return I([...o].reduce((c,[l,f])=>{for(;p.length&&o.get(p[p.length-1]).tagName>=f.tagName;)p.pop();let u=f.offsetTop;for(;!u&&f.parentElement;)f=f.parentElement,u=f.offsetTop;let h=f.offsetParent;for(;h;h=h.offsetParent)u+=h.offsetTop;return c.set([...p=[...p,l]].reverse(),u)},new Map))}).pipe(m(p=>new Map([...p].sort(([,c],[,l])=>c-l))),We(i),v(([p,c])=>t.pipe(jr(([l,f],{offset:{y:u},size:h})=>{let w=u+h.height>=Math.floor(s.height);for(;f.length;){let[,A]=f[0];if(A-c=u&&!w)f=[l.pop(),...f];else break}return[l,f]},[[],[...p]]),K((l,f)=>l[0]===f[0]&&l[1]===f[1])))))).pipe(m(([s,p])=>({prev:s.map(([c])=>c),next:p.map(([c])=>c)})),Q({prev:[],next:[]}),Ye(2,1),m(([s,p])=>s.prev.length{let i=new g,a=i.pipe(X(),ne(!0));if(i.subscribe(({prev:s,next:p})=>{for(let[c]of p)c.classList.remove("md-nav__link--passed"),c.classList.remove("md-nav__link--active");for(let[c,[l]]of s.entries())l.classList.add("md-nav__link--passed"),l.classList.toggle("md-nav__link--active",c===s.length-1)}),B("toc.follow")){let s=S(t.pipe(_e(1),m(()=>{})),t.pipe(_e(250),m(()=>"smooth")));i.pipe(b(({prev:p})=>p.length>0),We(o.pipe(be(se))),ee(s)).subscribe(([[{prev:p}],c])=>{let[l]=p[p.length-1];if(l.offsetHeight){let f=cr(l);if(typeof f!="undefined"){let u=l.offsetTop-f.offsetTop,{height:h}=ce(f);f.scrollTo({top:u-h/2,behavior:c})}}})}return B("navigation.tracking")&&t.pipe(U(a),Z("offset"),_e(250),Ce(1),U(n.pipe(Ce(1))),st({delay:250}),ee(i)).subscribe(([,{prev:s}])=>{let p=xe(),c=s[s.length-1];if(c&&c.length){let[l]=c,{hash:f}=new URL(l.href);p.hash!==f&&(p.hash=f,history.replaceState({},"",`${p}`))}else p.hash="",history.replaceState({},"",`${p}`)}),ls(e,{viewport$:t,header$:r}).pipe(E(s=>i.next(s)),L(()=>i.complete()),m(s=>R({ref:e},s)))})}function ms(e,{viewport$:t,main$:r,target$:o}){let n=t.pipe(m(({offset:{y:a}})=>a),Ye(2,1),m(([a,s])=>a>s&&s>0),K()),i=r.pipe(m(({active:a})=>a));return z([i,n]).pipe(m(([a,s])=>!(a&&s)),K(),U(o.pipe(Ce(1))),ne(!0),st({delay:250}),m(a=>({hidden:a})))}function gi(e,{viewport$:t,header$:r,main$:o,target$:n}){let i=new g,a=i.pipe(X(),ne(!0));return i.subscribe({next({hidden:s}){e.hidden=s,s?(e.setAttribute("tabindex","-1"),e.blur()):e.removeAttribute("tabindex")},complete(){e.style.top="",e.hidden=!0,e.removeAttribute("tabindex")}}),r.pipe(U(a),Z("height")).subscribe(({height:s})=>{e.style.top=`${s+16}px`}),d(e,"click").subscribe(s=>{s.preventDefault(),window.scrollTo({top:0})}),ms(e,{viewport$:t,main$:o,target$:n}).pipe(E(s=>i.next(s)),L(()=>i.complete()),m(s=>R({ref:e},s)))}function xi({document$:e,viewport$:t}){e.pipe(v(()=>$(".md-ellipsis")),oe(r=>tt(r).pipe(U(e.pipe(Ce(1))),b(o=>o),m(()=>r),Te(1))),b(r=>r.offsetWidth{let o=r.innerText,n=r.closest("a")||r;return n.title=o,B("content.tooltips")?lt(n,{viewport$:t}).pipe(U(e.pipe(Ce(1))),L(()=>n.removeAttribute("title"))):O})).subscribe(),B("content.tooltips")&&e.pipe(v(()=>$(".md-status")),oe(r=>lt(r,{viewport$:t}))).subscribe()}function yi({document$:e,tablet$:t}){e.pipe(v(()=>$(".md-toggle--indeterminate")),E(r=>{r.indeterminate=!0,r.checked=!1}),oe(r=>d(r,"change").pipe(Dr(()=>r.classList.contains("md-toggle--indeterminate")),m(()=>r))),ee(t)).subscribe(([r,o])=>{r.classList.remove("md-toggle--indeterminate"),o&&(r.checked=!1)})}function fs(){return/(iPad|iPhone|iPod)/.test(navigator.userAgent)}function Ei({document$:e}){e.pipe(v(()=>$("[data-md-scrollfix]")),E(t=>t.removeAttribute("data-md-scrollfix")),b(fs),oe(t=>d(t,"touchstart").pipe(m(()=>t)))).subscribe(t=>{let r=t.scrollTop;r===0?t.scrollTop=1:r+t.offsetHeight===t.scrollHeight&&(t.scrollTop=r-1)})}function wi({viewport$:e,tablet$:t}){z([Ve("search"),t]).pipe(m(([r,o])=>r&&!o),v(r=>I(r).pipe(Ge(r?400:100))),ee(e)).subscribe(([r,{offset:{y:o}}])=>{if(r)document.body.setAttribute("data-md-scrolllock",""),document.body.style.top=`-${o}px`;else{let n=-1*parseInt(document.body.style.top,10);document.body.removeAttribute("data-md-scrolllock"),document.body.style.top="",n&&window.scrollTo(0,n)}})}Object.entries||(Object.entries=function(e){let t=[];for(let r of Object.keys(e))t.push([r,e[r]]);return t});Object.values||(Object.values=function(e){let t=[];for(let r of Object.keys(e))t.push(e[r]);return t});typeof Element!="undefined"&&(Element.prototype.scrollTo||(Element.prototype.scrollTo=function(e,t){typeof e=="object"?(this.scrollLeft=e.left,this.scrollTop=e.top):(this.scrollLeft=e,this.scrollTop=t)}),Element.prototype.replaceWith||(Element.prototype.replaceWith=function(...e){let t=this.parentNode;if(t){e.length===0&&t.removeChild(this);for(let r=e.length-1;r>=0;r--){let o=e[r];typeof o=="string"?o=document.createTextNode(o):o.parentNode&&o.parentNode.removeChild(o),r?t.insertBefore(this.previousSibling,o):t.replaceChild(o,this)}}}));function us(){return location.protocol==="file:"?wt(`${new URL("search/search_index.js",Xr.base)}`).pipe(m(()=>__index),G(1)):Ne(new URL("search/search_index.json",Xr.base))}document.documentElement.classList.remove("no-js");document.documentElement.classList.add("js");var ot=Yo(),jt=nn(),Ot=cn(jt),Zr=on(),Oe=bn(),hr=$t("(min-width: 960px)"),Si=$t("(min-width: 1220px)"),Oi=pn(),Xr=ye(),Mi=document.forms.namedItem("search")?us():Ke,eo=new g;Bn({alert$:eo});var to=new g;B("navigation.instant")&&Zn({location$:jt,viewport$:Oe,progress$:to}).subscribe(ot);var Ti;((Ti=Xr.version)==null?void 0:Ti.provider)==="mike"&&ii({document$:ot});S(jt,Ot).pipe(Ge(125)).subscribe(()=>{Je("drawer",!1),Je("search",!1)});Zr.pipe(b(({mode:e})=>e==="global")).subscribe(e=>{switch(e.type){case"p":case",":let t=fe("link[rel=prev]");typeof t!="undefined"&&pt(t);break;case"n":case".":let r=fe("link[rel=next]");typeof r!="undefined"&&pt(r);break;case"Enter":let o=Re();o instanceof HTMLLabelElement&&o.click()}});xi({viewport$:Oe,document$:ot});yi({document$:ot,tablet$:hr});Ei({document$:ot});wi({viewport$:Oe,tablet$:hr});var rt=Nn(Se("header"),{viewport$:Oe}),Ft=ot.pipe(m(()=>Se("main")),v(e=>Qn(e,{viewport$:Oe,header$:rt})),G(1)),ds=S(...ae("consent").map(e=>xn(e,{target$:Ot})),...ae("dialog").map(e=>Dn(e,{alert$:eo})),...ae("header").map(e=>zn(e,{viewport$:Oe,header$:rt,main$:Ft})),...ae("palette").map(e=>Kn(e)),...ae("progress").map(e=>Yn(e,{progress$:to})),...ae("search").map(e=>li(e,{index$:Mi,keyboard$:Zr})),...ae("source").map(e=>hi(e))),hs=C(()=>S(...ae("announce").map(e=>gn(e)),...ae("content").map(e=>Un(e,{viewport$:Oe,target$:Ot,print$:Oi})),...ae("content").map(e=>B("search.highlight")?mi(e,{index$:Mi,location$:jt}):O),...ae("header-title").map(e=>qn(e,{viewport$:Oe,header$:rt})),...ae("sidebar").map(e=>e.getAttribute("data-md-type")==="navigation"?Nr(Si,()=>Jr(e,{viewport$:Oe,header$:rt,main$:Ft})):Nr(hr,()=>Jr(e,{viewport$:Oe,header$:rt,main$:Ft}))),...ae("tabs").map(e=>bi(e,{viewport$:Oe,header$:rt})),...ae("toc").map(e=>vi(e,{viewport$:Oe,header$:rt,main$:Ft,target$:Ot})),...ae("top").map(e=>gi(e,{viewport$:Oe,header$:rt,main$:Ft,target$:Ot})))),Li=ot.pipe(v(()=>hs),Pe(ds),G(1));Li.subscribe();window.document$=ot;window.location$=jt;window.target$=Ot;window.keyboard$=Zr;window.viewport$=Oe;window.tablet$=hr;window.screen$=Si;window.print$=Oi;window.alert$=eo;window.progress$=to;window.component$=Li;})(); +//# sourceMappingURL=bundle.fe8b6f2b.min.js.map + diff --git a/assets/javascripts/bundle.fe8b6f2b.min.js.map b/assets/javascripts/bundle.fe8b6f2b.min.js.map new file mode 100644 index 000000000..82635852a --- /dev/null +++ b/assets/javascripts/bundle.fe8b6f2b.min.js.map @@ -0,0 +1,7 @@ +{ + "version": 3, + "sources": ["node_modules/focus-visible/dist/focus-visible.js", "node_modules/clipboard/dist/clipboard.js", "node_modules/escape-html/index.js", "src/templates/assets/javascripts/bundle.ts", "node_modules/rxjs/node_modules/tslib/tslib.es6.js", "node_modules/rxjs/src/internal/util/isFunction.ts", "node_modules/rxjs/src/internal/util/createErrorClass.ts", "node_modules/rxjs/src/internal/util/UnsubscriptionError.ts", "node_modules/rxjs/src/internal/util/arrRemove.ts", "node_modules/rxjs/src/internal/Subscription.ts", "node_modules/rxjs/src/internal/config.ts", "node_modules/rxjs/src/internal/scheduler/timeoutProvider.ts", "node_modules/rxjs/src/internal/util/reportUnhandledError.ts", "node_modules/rxjs/src/internal/util/noop.ts", "node_modules/rxjs/src/internal/NotificationFactories.ts", "node_modules/rxjs/src/internal/util/errorContext.ts", "node_modules/rxjs/src/internal/Subscriber.ts", "node_modules/rxjs/src/internal/symbol/observable.ts", "node_modules/rxjs/src/internal/util/identity.ts", "node_modules/rxjs/src/internal/util/pipe.ts", "node_modules/rxjs/src/internal/Observable.ts", "node_modules/rxjs/src/internal/util/lift.ts", "node_modules/rxjs/src/internal/operators/OperatorSubscriber.ts", "node_modules/rxjs/src/internal/scheduler/animationFrameProvider.ts", "node_modules/rxjs/src/internal/util/ObjectUnsubscribedError.ts", "node_modules/rxjs/src/internal/Subject.ts", "node_modules/rxjs/src/internal/BehaviorSubject.ts", "node_modules/rxjs/src/internal/scheduler/dateTimestampProvider.ts", "node_modules/rxjs/src/internal/ReplaySubject.ts", "node_modules/rxjs/src/internal/scheduler/Action.ts", "node_modules/rxjs/src/internal/scheduler/intervalProvider.ts", "node_modules/rxjs/src/internal/scheduler/AsyncAction.ts", "node_modules/rxjs/src/internal/Scheduler.ts", "node_modules/rxjs/src/internal/scheduler/AsyncScheduler.ts", "node_modules/rxjs/src/internal/scheduler/async.ts", "node_modules/rxjs/src/internal/scheduler/QueueAction.ts", "node_modules/rxjs/src/internal/scheduler/QueueScheduler.ts", "node_modules/rxjs/src/internal/scheduler/queue.ts", "node_modules/rxjs/src/internal/scheduler/AnimationFrameAction.ts", "node_modules/rxjs/src/internal/scheduler/AnimationFrameScheduler.ts", "node_modules/rxjs/src/internal/scheduler/animationFrame.ts", "node_modules/rxjs/src/internal/observable/empty.ts", "node_modules/rxjs/src/internal/util/isScheduler.ts", "node_modules/rxjs/src/internal/util/args.ts", "node_modules/rxjs/src/internal/util/isArrayLike.ts", "node_modules/rxjs/src/internal/util/isPromise.ts", "node_modules/rxjs/src/internal/util/isInteropObservable.ts", "node_modules/rxjs/src/internal/util/isAsyncIterable.ts", "node_modules/rxjs/src/internal/util/throwUnobservableError.ts", "node_modules/rxjs/src/internal/symbol/iterator.ts", "node_modules/rxjs/src/internal/util/isIterable.ts", "node_modules/rxjs/src/internal/util/isReadableStreamLike.ts", "node_modules/rxjs/src/internal/observable/innerFrom.ts", "node_modules/rxjs/src/internal/util/executeSchedule.ts", "node_modules/rxjs/src/internal/operators/observeOn.ts", "node_modules/rxjs/src/internal/operators/subscribeOn.ts", "node_modules/rxjs/src/internal/scheduled/scheduleObservable.ts", "node_modules/rxjs/src/internal/scheduled/schedulePromise.ts", "node_modules/rxjs/src/internal/scheduled/scheduleArray.ts", "node_modules/rxjs/src/internal/scheduled/scheduleIterable.ts", "node_modules/rxjs/src/internal/scheduled/scheduleAsyncIterable.ts", "node_modules/rxjs/src/internal/scheduled/scheduleReadableStreamLike.ts", "node_modules/rxjs/src/internal/scheduled/scheduled.ts", "node_modules/rxjs/src/internal/observable/from.ts", "node_modules/rxjs/src/internal/observable/of.ts", "node_modules/rxjs/src/internal/observable/throwError.ts", "node_modules/rxjs/src/internal/util/EmptyError.ts", "node_modules/rxjs/src/internal/util/isDate.ts", "node_modules/rxjs/src/internal/operators/map.ts", "node_modules/rxjs/src/internal/util/mapOneOrManyArgs.ts", "node_modules/rxjs/src/internal/util/argsArgArrayOrObject.ts", "node_modules/rxjs/src/internal/util/createObject.ts", "node_modules/rxjs/src/internal/observable/combineLatest.ts", "node_modules/rxjs/src/internal/operators/mergeInternals.ts", "node_modules/rxjs/src/internal/operators/mergeMap.ts", "node_modules/rxjs/src/internal/operators/mergeAll.ts", "node_modules/rxjs/src/internal/operators/concatAll.ts", "node_modules/rxjs/src/internal/observable/concat.ts", "node_modules/rxjs/src/internal/observable/defer.ts", "node_modules/rxjs/src/internal/observable/fromEvent.ts", "node_modules/rxjs/src/internal/observable/fromEventPattern.ts", "node_modules/rxjs/src/internal/observable/timer.ts", "node_modules/rxjs/src/internal/observable/merge.ts", "node_modules/rxjs/src/internal/observable/never.ts", "node_modules/rxjs/src/internal/util/argsOrArgArray.ts", "node_modules/rxjs/src/internal/operators/filter.ts", "node_modules/rxjs/src/internal/observable/zip.ts", "node_modules/rxjs/src/internal/operators/audit.ts", "node_modules/rxjs/src/internal/operators/auditTime.ts", "node_modules/rxjs/src/internal/operators/bufferCount.ts", "node_modules/rxjs/src/internal/operators/catchError.ts", "node_modules/rxjs/src/internal/operators/scanInternals.ts", "node_modules/rxjs/src/internal/operators/combineLatest.ts", "node_modules/rxjs/src/internal/operators/combineLatestWith.ts", "node_modules/rxjs/src/internal/operators/debounce.ts", "node_modules/rxjs/src/internal/operators/debounceTime.ts", "node_modules/rxjs/src/internal/operators/defaultIfEmpty.ts", "node_modules/rxjs/src/internal/operators/take.ts", "node_modules/rxjs/src/internal/operators/ignoreElements.ts", "node_modules/rxjs/src/internal/operators/mapTo.ts", "node_modules/rxjs/src/internal/operators/delayWhen.ts", "node_modules/rxjs/src/internal/operators/delay.ts", "node_modules/rxjs/src/internal/operators/distinctUntilChanged.ts", "node_modules/rxjs/src/internal/operators/distinctUntilKeyChanged.ts", "node_modules/rxjs/src/internal/operators/throwIfEmpty.ts", "node_modules/rxjs/src/internal/operators/endWith.ts", "node_modules/rxjs/src/internal/operators/finalize.ts", "node_modules/rxjs/src/internal/operators/first.ts", "node_modules/rxjs/src/internal/operators/takeLast.ts", "node_modules/rxjs/src/internal/operators/merge.ts", "node_modules/rxjs/src/internal/operators/mergeWith.ts", "node_modules/rxjs/src/internal/operators/repeat.ts", "node_modules/rxjs/src/internal/operators/scan.ts", "node_modules/rxjs/src/internal/operators/share.ts", "node_modules/rxjs/src/internal/operators/shareReplay.ts", "node_modules/rxjs/src/internal/operators/skip.ts", "node_modules/rxjs/src/internal/operators/skipUntil.ts", "node_modules/rxjs/src/internal/operators/startWith.ts", "node_modules/rxjs/src/internal/operators/switchMap.ts", "node_modules/rxjs/src/internal/operators/takeUntil.ts", "node_modules/rxjs/src/internal/operators/takeWhile.ts", "node_modules/rxjs/src/internal/operators/tap.ts", "node_modules/rxjs/src/internal/operators/throttle.ts", "node_modules/rxjs/src/internal/operators/throttleTime.ts", "node_modules/rxjs/src/internal/operators/withLatestFrom.ts", "node_modules/rxjs/src/internal/operators/zip.ts", "node_modules/rxjs/src/internal/operators/zipWith.ts", "src/templates/assets/javascripts/browser/document/index.ts", "src/templates/assets/javascripts/browser/element/_/index.ts", "src/templates/assets/javascripts/browser/element/focus/index.ts", "src/templates/assets/javascripts/browser/element/hover/index.ts", "src/templates/assets/javascripts/utilities/h/index.ts", "src/templates/assets/javascripts/utilities/round/index.ts", "src/templates/assets/javascripts/browser/script/index.ts", "src/templates/assets/javascripts/browser/element/size/_/index.ts", "src/templates/assets/javascripts/browser/element/size/content/index.ts", "src/templates/assets/javascripts/browser/element/offset/_/index.ts", "src/templates/assets/javascripts/browser/element/offset/content/index.ts", "src/templates/assets/javascripts/browser/element/visibility/index.ts", "src/templates/assets/javascripts/browser/toggle/index.ts", "src/templates/assets/javascripts/browser/keyboard/index.ts", "src/templates/assets/javascripts/browser/location/_/index.ts", "src/templates/assets/javascripts/browser/location/hash/index.ts", "src/templates/assets/javascripts/browser/media/index.ts", "src/templates/assets/javascripts/browser/request/index.ts", "src/templates/assets/javascripts/browser/viewport/offset/index.ts", "src/templates/assets/javascripts/browser/viewport/size/index.ts", "src/templates/assets/javascripts/browser/viewport/_/index.ts", "src/templates/assets/javascripts/browser/viewport/at/index.ts", "src/templates/assets/javascripts/browser/worker/index.ts", "src/templates/assets/javascripts/_/index.ts", "src/templates/assets/javascripts/components/_/index.ts", "src/templates/assets/javascripts/components/announce/index.ts", "src/templates/assets/javascripts/components/consent/index.ts", "src/templates/assets/javascripts/templates/tooltip/index.tsx", "src/templates/assets/javascripts/templates/annotation/index.tsx", "src/templates/assets/javascripts/templates/clipboard/index.tsx", "src/templates/assets/javascripts/templates/search/index.tsx", "src/templates/assets/javascripts/templates/source/index.tsx", "src/templates/assets/javascripts/templates/tabbed/index.tsx", "src/templates/assets/javascripts/templates/table/index.tsx", "src/templates/assets/javascripts/templates/version/index.tsx", "src/templates/assets/javascripts/components/tooltip2/index.ts", "src/templates/assets/javascripts/components/content/annotation/_/index.ts", "src/templates/assets/javascripts/components/content/annotation/list/index.ts", "src/templates/assets/javascripts/components/content/annotation/block/index.ts", "src/templates/assets/javascripts/components/content/code/_/index.ts", "src/templates/assets/javascripts/components/content/details/index.ts", "src/templates/assets/javascripts/components/content/mermaid/index.css", "src/templates/assets/javascripts/components/content/mermaid/index.ts", "src/templates/assets/javascripts/components/content/table/index.ts", "src/templates/assets/javascripts/components/content/tabs/index.ts", "src/templates/assets/javascripts/components/content/_/index.ts", "src/templates/assets/javascripts/components/dialog/index.ts", "src/templates/assets/javascripts/components/tooltip/index.ts", "src/templates/assets/javascripts/components/header/_/index.ts", "src/templates/assets/javascripts/components/header/title/index.ts", "src/templates/assets/javascripts/components/main/index.ts", "src/templates/assets/javascripts/components/palette/index.ts", "src/templates/assets/javascripts/components/progress/index.ts", "src/templates/assets/javascripts/integrations/clipboard/index.ts", "src/templates/assets/javascripts/integrations/sitemap/index.ts", "src/templates/assets/javascripts/integrations/instant/index.ts", "src/templates/assets/javascripts/integrations/search/highlighter/index.ts", "src/templates/assets/javascripts/integrations/search/worker/message/index.ts", "src/templates/assets/javascripts/integrations/search/worker/_/index.ts", "src/templates/assets/javascripts/integrations/version/index.ts", "src/templates/assets/javascripts/components/search/query/index.ts", "src/templates/assets/javascripts/components/search/result/index.ts", "src/templates/assets/javascripts/components/search/share/index.ts", "src/templates/assets/javascripts/components/search/suggest/index.ts", "src/templates/assets/javascripts/components/search/_/index.ts", "src/templates/assets/javascripts/components/search/highlight/index.ts", "src/templates/assets/javascripts/components/sidebar/index.ts", "src/templates/assets/javascripts/components/source/facts/github/index.ts", "src/templates/assets/javascripts/components/source/facts/gitlab/index.ts", "src/templates/assets/javascripts/components/source/facts/_/index.ts", "src/templates/assets/javascripts/components/source/_/index.ts", "src/templates/assets/javascripts/components/tabs/index.ts", "src/templates/assets/javascripts/components/toc/index.ts", "src/templates/assets/javascripts/components/top/index.ts", "src/templates/assets/javascripts/patches/ellipsis/index.ts", "src/templates/assets/javascripts/patches/indeterminate/index.ts", "src/templates/assets/javascripts/patches/scrollfix/index.ts", "src/templates/assets/javascripts/patches/scrolllock/index.ts", "src/templates/assets/javascripts/polyfills/index.ts"], + "sourcesContent": ["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (factory());\n}(this, (function () { 'use strict';\n\n /**\n * Applies the :focus-visible polyfill at the given scope.\n * A scope in this case is either the top-level Document or a Shadow Root.\n *\n * @param {(Document|ShadowRoot)} scope\n * @see https://github.com/WICG/focus-visible\n */\n function applyFocusVisiblePolyfill(scope) {\n var hadKeyboardEvent = true;\n var hadFocusVisibleRecently = false;\n var hadFocusVisibleRecentlyTimeout = null;\n\n var inputTypesAllowlist = {\n text: true,\n search: true,\n url: true,\n tel: true,\n email: true,\n password: true,\n number: true,\n date: true,\n month: true,\n week: true,\n time: true,\n datetime: true,\n 'datetime-local': true\n };\n\n /**\n * Helper function for legacy browsers and iframes which sometimes focus\n * elements like document, body, and non-interactive SVG.\n * @param {Element} el\n */\n function isValidFocusTarget(el) {\n if (\n el &&\n el !== document &&\n el.nodeName !== 'HTML' &&\n el.nodeName !== 'BODY' &&\n 'classList' in el &&\n 'contains' in el.classList\n ) {\n return true;\n }\n return false;\n }\n\n /**\n * Computes whether the given element should automatically trigger the\n * `focus-visible` class being added, i.e. whether it should always match\n * `:focus-visible` when focused.\n * @param {Element} el\n * @return {boolean}\n */\n function focusTriggersKeyboardModality(el) {\n var type = el.type;\n var tagName = el.tagName;\n\n if (tagName === 'INPUT' && inputTypesAllowlist[type] && !el.readOnly) {\n return true;\n }\n\n if (tagName === 'TEXTAREA' && !el.readOnly) {\n return true;\n }\n\n if (el.isContentEditable) {\n return true;\n }\n\n return false;\n }\n\n /**\n * Add the `focus-visible` class to the given element if it was not added by\n * the author.\n * @param {Element} el\n */\n function addFocusVisibleClass(el) {\n if (el.classList.contains('focus-visible')) {\n return;\n }\n el.classList.add('focus-visible');\n el.setAttribute('data-focus-visible-added', '');\n }\n\n /**\n * Remove the `focus-visible` class from the given element if it was not\n * originally added by the author.\n * @param {Element} el\n */\n function removeFocusVisibleClass(el) {\n if (!el.hasAttribute('data-focus-visible-added')) {\n return;\n }\n el.classList.remove('focus-visible');\n el.removeAttribute('data-focus-visible-added');\n }\n\n /**\n * If the most recent user interaction was via the keyboard;\n * and the key press did not include a meta, alt/option, or control key;\n * then the modality is keyboard. Otherwise, the modality is not keyboard.\n * Apply `focus-visible` to any current active element and keep track\n * of our keyboard modality state with `hadKeyboardEvent`.\n * @param {KeyboardEvent} e\n */\n function onKeyDown(e) {\n if (e.metaKey || e.altKey || e.ctrlKey) {\n return;\n }\n\n if (isValidFocusTarget(scope.activeElement)) {\n addFocusVisibleClass(scope.activeElement);\n }\n\n hadKeyboardEvent = true;\n }\n\n /**\n * If at any point a user clicks with a pointing device, ensure that we change\n * the modality away from keyboard.\n * This avoids the situation where a user presses a key on an already focused\n * element, and then clicks on a different element, focusing it with a\n * pointing device, while we still think we're in keyboard modality.\n * @param {Event} e\n */\n function onPointerDown(e) {\n hadKeyboardEvent = false;\n }\n\n /**\n * On `focus`, add the `focus-visible` class to the target if:\n * - the target received focus as a result of keyboard navigation, or\n * - the event target is an element that will likely require interaction\n * via the keyboard (e.g. a text box)\n * @param {Event} e\n */\n function onFocus(e) {\n // Prevent IE from focusing the document or HTML element.\n if (!isValidFocusTarget(e.target)) {\n return;\n }\n\n if (hadKeyboardEvent || focusTriggersKeyboardModality(e.target)) {\n addFocusVisibleClass(e.target);\n }\n }\n\n /**\n * On `blur`, remove the `focus-visible` class from the target.\n * @param {Event} e\n */\n function onBlur(e) {\n if (!isValidFocusTarget(e.target)) {\n return;\n }\n\n if (\n e.target.classList.contains('focus-visible') ||\n e.target.hasAttribute('data-focus-visible-added')\n ) {\n // To detect a tab/window switch, we look for a blur event followed\n // rapidly by a visibility change.\n // If we don't see a visibility change within 100ms, it's probably a\n // regular focus change.\n hadFocusVisibleRecently = true;\n window.clearTimeout(hadFocusVisibleRecentlyTimeout);\n hadFocusVisibleRecentlyTimeout = window.setTimeout(function() {\n hadFocusVisibleRecently = false;\n }, 100);\n removeFocusVisibleClass(e.target);\n }\n }\n\n /**\n * If the user changes tabs, keep track of whether or not the previously\n * focused element had .focus-visible.\n * @param {Event} e\n */\n function onVisibilityChange(e) {\n if (document.visibilityState === 'hidden') {\n // If the tab becomes active again, the browser will handle calling focus\n // on the element (Safari actually calls it twice).\n // If this tab change caused a blur on an element with focus-visible,\n // re-apply the class when the user switches back to the tab.\n if (hadFocusVisibleRecently) {\n hadKeyboardEvent = true;\n }\n addInitialPointerMoveListeners();\n }\n }\n\n /**\n * Add a group of listeners to detect usage of any pointing devices.\n * These listeners will be added when the polyfill first loads, and anytime\n * the window is blurred, so that they are active when the window regains\n * focus.\n */\n function addInitialPointerMoveListeners() {\n document.addEventListener('mousemove', onInitialPointerMove);\n document.addEventListener('mousedown', onInitialPointerMove);\n document.addEventListener('mouseup', onInitialPointerMove);\n document.addEventListener('pointermove', onInitialPointerMove);\n document.addEventListener('pointerdown', onInitialPointerMove);\n document.addEventListener('pointerup', onInitialPointerMove);\n document.addEventListener('touchmove', onInitialPointerMove);\n document.addEventListener('touchstart', onInitialPointerMove);\n document.addEventListener('touchend', onInitialPointerMove);\n }\n\n function removeInitialPointerMoveListeners() {\n document.removeEventListener('mousemove', onInitialPointerMove);\n document.removeEventListener('mousedown', onInitialPointerMove);\n document.removeEventListener('mouseup', onInitialPointerMove);\n document.removeEventListener('pointermove', onInitialPointerMove);\n document.removeEventListener('pointerdown', onInitialPointerMove);\n document.removeEventListener('pointerup', onInitialPointerMove);\n document.removeEventListener('touchmove', onInitialPointerMove);\n document.removeEventListener('touchstart', onInitialPointerMove);\n document.removeEventListener('touchend', onInitialPointerMove);\n }\n\n /**\n * When the polfyill first loads, assume the user is in keyboard modality.\n * If any event is received from a pointing device (e.g. mouse, pointer,\n * touch), turn off keyboard modality.\n * This accounts for situations where focus enters the page from the URL bar.\n * @param {Event} e\n */\n function onInitialPointerMove(e) {\n // Work around a Safari quirk that fires a mousemove on whenever the\n // window blurs, even if you're tabbing out of the page. \u00AF\\_(\u30C4)_/\u00AF\n if (e.target.nodeName && e.target.nodeName.toLowerCase() === 'html') {\n return;\n }\n\n hadKeyboardEvent = false;\n removeInitialPointerMoveListeners();\n }\n\n // For some kinds of state, we are interested in changes at the global scope\n // only. For example, global pointer input, global key presses and global\n // visibility change should affect the state at every scope:\n document.addEventListener('keydown', onKeyDown, true);\n document.addEventListener('mousedown', onPointerDown, true);\n document.addEventListener('pointerdown', onPointerDown, true);\n document.addEventListener('touchstart', onPointerDown, true);\n document.addEventListener('visibilitychange', onVisibilityChange, true);\n\n addInitialPointerMoveListeners();\n\n // For focus and blur, we specifically care about state changes in the local\n // scope. This is because focus / blur events that originate from within a\n // shadow root are not re-dispatched from the host element if it was already\n // the active element in its own scope:\n scope.addEventListener('focus', onFocus, true);\n scope.addEventListener('blur', onBlur, true);\n\n // We detect that a node is a ShadowRoot by ensuring that it is a\n // DocumentFragment and also has a host property. This check covers native\n // implementation and polyfill implementation transparently. If we only cared\n // about the native implementation, we could just check if the scope was\n // an instance of a ShadowRoot.\n if (scope.nodeType === Node.DOCUMENT_FRAGMENT_NODE && scope.host) {\n // Since a ShadowRoot is a special kind of DocumentFragment, it does not\n // have a root element to add a class to. So, we add this attribute to the\n // host element instead:\n scope.host.setAttribute('data-js-focus-visible', '');\n } else if (scope.nodeType === Node.DOCUMENT_NODE) {\n document.documentElement.classList.add('js-focus-visible');\n document.documentElement.setAttribute('data-js-focus-visible', '');\n }\n }\n\n // It is important to wrap all references to global window and document in\n // these checks to support server-side rendering use cases\n // @see https://github.com/WICG/focus-visible/issues/199\n if (typeof window !== 'undefined' && typeof document !== 'undefined') {\n // Make the polyfill helper globally available. This can be used as a signal\n // to interested libraries that wish to coordinate with the polyfill for e.g.,\n // applying the polyfill to a shadow root:\n window.applyFocusVisiblePolyfill = applyFocusVisiblePolyfill;\n\n // Notify interested libraries of the polyfill's presence, in case the\n // polyfill was loaded lazily:\n var event;\n\n try {\n event = new CustomEvent('focus-visible-polyfill-ready');\n } catch (error) {\n // IE11 does not support using CustomEvent as a constructor directly:\n event = document.createEvent('CustomEvent');\n event.initCustomEvent('focus-visible-polyfill-ready', false, false, {});\n }\n\n window.dispatchEvent(event);\n }\n\n if (typeof document !== 'undefined') {\n // Apply the polyfill to the global document, so that no JavaScript\n // coordination is required to use the polyfill in the top-level document:\n applyFocusVisiblePolyfill(document);\n }\n\n})));\n", "/*!\n * clipboard.js v2.0.11\n * https://clipboardjs.com/\n *\n * Licensed MIT \u00A9 Zeno Rocha\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ClipboardJS\"] = factory();\n\telse\n\t\troot[\"ClipboardJS\"] = factory();\n})(this, function() {\nreturn /******/ (function() { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ({\n\n/***/ 686:\n/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n \"default\": function() { return /* binding */ clipboard; }\n});\n\n// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js\nvar tiny_emitter = __webpack_require__(279);\nvar tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter);\n// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js\nvar listen = __webpack_require__(370);\nvar listen_default = /*#__PURE__*/__webpack_require__.n(listen);\n// EXTERNAL MODULE: ./node_modules/select/src/select.js\nvar src_select = __webpack_require__(817);\nvar select_default = /*#__PURE__*/__webpack_require__.n(src_select);\n;// CONCATENATED MODULE: ./src/common/command.js\n/**\n * Executes a given operation type.\n * @param {String} type\n * @return {Boolean}\n */\nfunction command(type) {\n try {\n return document.execCommand(type);\n } catch (err) {\n return false;\n }\n}\n;// CONCATENATED MODULE: ./src/actions/cut.js\n\n\n/**\n * Cut action wrapper.\n * @param {String|HTMLElement} target\n * @return {String}\n */\n\nvar ClipboardActionCut = function ClipboardActionCut(target) {\n var selectedText = select_default()(target);\n command('cut');\n return selectedText;\n};\n\n/* harmony default export */ var actions_cut = (ClipboardActionCut);\n;// CONCATENATED MODULE: ./src/common/create-fake-element.js\n/**\n * Creates a fake textarea element with a value.\n * @param {String} value\n * @return {HTMLElement}\n */\nfunction createFakeElement(value) {\n var isRTL = document.documentElement.getAttribute('dir') === 'rtl';\n var fakeElement = document.createElement('textarea'); // Prevent zooming on iOS\n\n fakeElement.style.fontSize = '12pt'; // Reset box model\n\n fakeElement.style.border = '0';\n fakeElement.style.padding = '0';\n fakeElement.style.margin = '0'; // Move element out of screen horizontally\n\n fakeElement.style.position = 'absolute';\n fakeElement.style[isRTL ? 'right' : 'left'] = '-9999px'; // Move element to the same position vertically\n\n var yPosition = window.pageYOffset || document.documentElement.scrollTop;\n fakeElement.style.top = \"\".concat(yPosition, \"px\");\n fakeElement.setAttribute('readonly', '');\n fakeElement.value = value;\n return fakeElement;\n}\n;// CONCATENATED MODULE: ./src/actions/copy.js\n\n\n\n/**\n * Create fake copy action wrapper using a fake element.\n * @param {String} target\n * @param {Object} options\n * @return {String}\n */\n\nvar fakeCopyAction = function fakeCopyAction(value, options) {\n var fakeElement = createFakeElement(value);\n options.container.appendChild(fakeElement);\n var selectedText = select_default()(fakeElement);\n command('copy');\n fakeElement.remove();\n return selectedText;\n};\n/**\n * Copy action wrapper.\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @return {String}\n */\n\n\nvar ClipboardActionCopy = function ClipboardActionCopy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n var selectedText = '';\n\n if (typeof target === 'string') {\n selectedText = fakeCopyAction(target, options);\n } else if (target instanceof HTMLInputElement && !['text', 'search', 'url', 'tel', 'password'].includes(target === null || target === void 0 ? void 0 : target.type)) {\n // If input type doesn't support `setSelectionRange`. Simulate it. https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/setSelectionRange\n selectedText = fakeCopyAction(target.value, options);\n } else {\n selectedText = select_default()(target);\n command('copy');\n }\n\n return selectedText;\n};\n\n/* harmony default export */ var actions_copy = (ClipboardActionCopy);\n;// CONCATENATED MODULE: ./src/actions/default.js\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n\n\n/**\n * Inner function which performs selection from either `text` or `target`\n * properties and then executes copy or cut operations.\n * @param {Object} options\n */\n\nvar ClipboardActionDefault = function ClipboardActionDefault() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Defines base properties passed from constructor.\n var _options$action = options.action,\n action = _options$action === void 0 ? 'copy' : _options$action,\n container = options.container,\n target = options.target,\n text = options.text; // Sets the `action` to be performed which can be either 'copy' or 'cut'.\n\n if (action !== 'copy' && action !== 'cut') {\n throw new Error('Invalid \"action\" value, use either \"copy\" or \"cut\"');\n } // Sets the `target` property using an element that will be have its content copied.\n\n\n if (target !== undefined) {\n if (target && _typeof(target) === 'object' && target.nodeType === 1) {\n if (action === 'copy' && target.hasAttribute('disabled')) {\n throw new Error('Invalid \"target\" attribute. Please use \"readonly\" instead of \"disabled\" attribute');\n }\n\n if (action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {\n throw new Error('Invalid \"target\" attribute. You can\\'t cut text from elements with \"readonly\" or \"disabled\" attributes');\n }\n } else {\n throw new Error('Invalid \"target\" value, use a valid Element');\n }\n } // Define selection strategy based on `text` property.\n\n\n if (text) {\n return actions_copy(text, {\n container: container\n });\n } // Defines which selection strategy based on `target` property.\n\n\n if (target) {\n return action === 'cut' ? actions_cut(target) : actions_copy(target, {\n container: container\n });\n }\n};\n\n/* harmony default export */ var actions_default = (ClipboardActionDefault);\n;// CONCATENATED MODULE: ./src/clipboard.js\nfunction clipboard_typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { clipboard_typeof = function _typeof(obj) { return typeof obj; }; } else { clipboard_typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return clipboard_typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (clipboard_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n\n\n\n\n\n/**\n * Helper function to retrieve attribute value.\n * @param {String} suffix\n * @param {Element} element\n */\n\nfunction getAttributeValue(suffix, element) {\n var attribute = \"data-clipboard-\".concat(suffix);\n\n if (!element.hasAttribute(attribute)) {\n return;\n }\n\n return element.getAttribute(attribute);\n}\n/**\n * Base class which takes one or more elements, adds event listeners to them,\n * and instantiates a new `ClipboardAction` on each click.\n */\n\n\nvar Clipboard = /*#__PURE__*/function (_Emitter) {\n _inherits(Clipboard, _Emitter);\n\n var _super = _createSuper(Clipboard);\n\n /**\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n * @param {Object} options\n */\n function Clipboard(trigger, options) {\n var _this;\n\n _classCallCheck(this, Clipboard);\n\n _this = _super.call(this);\n\n _this.resolveOptions(options);\n\n _this.listenClick(trigger);\n\n return _this;\n }\n /**\n * Defines if attributes would be resolved using internal setter functions\n * or custom functions that were passed in the constructor.\n * @param {Object} options\n */\n\n\n _createClass(Clipboard, [{\n key: \"resolveOptions\",\n value: function resolveOptions() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n this.action = typeof options.action === 'function' ? options.action : this.defaultAction;\n this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;\n this.text = typeof options.text === 'function' ? options.text : this.defaultText;\n this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body;\n }\n /**\n * Adds a click event listener to the passed trigger.\n * @param {String|HTMLElement|HTMLCollection|NodeList} trigger\n */\n\n }, {\n key: \"listenClick\",\n value: function listenClick(trigger) {\n var _this2 = this;\n\n this.listener = listen_default()(trigger, 'click', function (e) {\n return _this2.onClick(e);\n });\n }\n /**\n * Defines a new `ClipboardAction` on each click event.\n * @param {Event} e\n */\n\n }, {\n key: \"onClick\",\n value: function onClick(e) {\n var trigger = e.delegateTarget || e.currentTarget;\n var action = this.action(trigger) || 'copy';\n var text = actions_default({\n action: action,\n container: this.container,\n target: this.target(trigger),\n text: this.text(trigger)\n }); // Fires an event based on the copy operation result.\n\n this.emit(text ? 'success' : 'error', {\n action: action,\n text: text,\n trigger: trigger,\n clearSelection: function clearSelection() {\n if (trigger) {\n trigger.focus();\n }\n\n window.getSelection().removeAllRanges();\n }\n });\n }\n /**\n * Default `action` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultAction\",\n value: function defaultAction(trigger) {\n return getAttributeValue('action', trigger);\n }\n /**\n * Default `target` lookup function.\n * @param {Element} trigger\n */\n\n }, {\n key: \"defaultTarget\",\n value: function defaultTarget(trigger) {\n var selector = getAttributeValue('target', trigger);\n\n if (selector) {\n return document.querySelector(selector);\n }\n }\n /**\n * Allow fire programmatically a copy action\n * @param {String|HTMLElement} target\n * @param {Object} options\n * @returns Text copied.\n */\n\n }, {\n key: \"defaultText\",\n\n /**\n * Default `text` lookup function.\n * @param {Element} trigger\n */\n value: function defaultText(trigger) {\n return getAttributeValue('text', trigger);\n }\n /**\n * Destroy lifecycle.\n */\n\n }, {\n key: \"destroy\",\n value: function destroy() {\n this.listener.destroy();\n }\n }], [{\n key: \"copy\",\n value: function copy(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n container: document.body\n };\n return actions_copy(target, options);\n }\n /**\n * Allow fire programmatically a cut action\n * @param {String|HTMLElement} target\n * @returns Text cutted.\n */\n\n }, {\n key: \"cut\",\n value: function cut(target) {\n return actions_cut(target);\n }\n /**\n * Returns the support of the given action, or all actions if no action is\n * given.\n * @param {String} [action]\n */\n\n }, {\n key: \"isSupported\",\n value: function isSupported() {\n var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];\n var actions = typeof action === 'string' ? [action] : action;\n var support = !!document.queryCommandSupported;\n actions.forEach(function (action) {\n support = support && !!document.queryCommandSupported(action);\n });\n return support;\n }\n }]);\n\n return Clipboard;\n}((tiny_emitter_default()));\n\n/* harmony default export */ var clipboard = (Clipboard);\n\n/***/ }),\n\n/***/ 828:\n/***/ (function(module) {\n\nvar DOCUMENT_NODE_TYPE = 9;\n\n/**\n * A polyfill for Element.matches()\n */\nif (typeof Element !== 'undefined' && !Element.prototype.matches) {\n var proto = Element.prototype;\n\n proto.matches = proto.matchesSelector ||\n proto.mozMatchesSelector ||\n proto.msMatchesSelector ||\n proto.oMatchesSelector ||\n proto.webkitMatchesSelector;\n}\n\n/**\n * Finds the closest parent that matches a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @return {Function}\n */\nfunction closest (element, selector) {\n while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {\n if (typeof element.matches === 'function' &&\n element.matches(selector)) {\n return element;\n }\n element = element.parentNode;\n }\n}\n\nmodule.exports = closest;\n\n\n/***/ }),\n\n/***/ 438:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar closest = __webpack_require__(828);\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction _delegate(element, selector, type, callback, useCapture) {\n var listenerFn = listener.apply(this, arguments);\n\n element.addEventListener(type, listenerFn, useCapture);\n\n return {\n destroy: function() {\n element.removeEventListener(type, listenerFn, useCapture);\n }\n }\n}\n\n/**\n * Delegates event to a selector.\n *\n * @param {Element|String|Array} [elements]\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @param {Boolean} useCapture\n * @return {Object}\n */\nfunction delegate(elements, selector, type, callback, useCapture) {\n // Handle the regular Element usage\n if (typeof elements.addEventListener === 'function') {\n return _delegate.apply(null, arguments);\n }\n\n // Handle Element-less usage, it defaults to global delegation\n if (typeof type === 'function') {\n // Use `document` as the first parameter, then apply arguments\n // This is a short way to .unshift `arguments` without running into deoptimizations\n return _delegate.bind(null, document).apply(null, arguments);\n }\n\n // Handle Selector-based usage\n if (typeof elements === 'string') {\n elements = document.querySelectorAll(elements);\n }\n\n // Handle Array-like based usage\n return Array.prototype.map.call(elements, function (element) {\n return _delegate(element, selector, type, callback, useCapture);\n });\n}\n\n/**\n * Finds closest match and invokes callback.\n *\n * @param {Element} element\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Function}\n */\nfunction listener(element, selector, type, callback) {\n return function(e) {\n e.delegateTarget = closest(e.target, selector);\n\n if (e.delegateTarget) {\n callback.call(element, e);\n }\n }\n}\n\nmodule.exports = delegate;\n\n\n/***/ }),\n\n/***/ 879:\n/***/ (function(__unused_webpack_module, exports) {\n\n/**\n * Check if argument is a HTML element.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.node = function(value) {\n return value !== undefined\n && value instanceof HTMLElement\n && value.nodeType === 1;\n};\n\n/**\n * Check if argument is a list of HTML elements.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.nodeList = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return value !== undefined\n && (type === '[object NodeList]' || type === '[object HTMLCollection]')\n && ('length' in value)\n && (value.length === 0 || exports.node(value[0]));\n};\n\n/**\n * Check if argument is a string.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.string = function(value) {\n return typeof value === 'string'\n || value instanceof String;\n};\n\n/**\n * Check if argument is a function.\n *\n * @param {Object} value\n * @return {Boolean}\n */\nexports.fn = function(value) {\n var type = Object.prototype.toString.call(value);\n\n return type === '[object Function]';\n};\n\n\n/***/ }),\n\n/***/ 370:\n/***/ (function(module, __unused_webpack_exports, __webpack_require__) {\n\nvar is = __webpack_require__(879);\nvar delegate = __webpack_require__(438);\n\n/**\n * Validates all params and calls the right\n * listener function based on its target type.\n *\n * @param {String|HTMLElement|HTMLCollection|NodeList} target\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listen(target, type, callback) {\n if (!target && !type && !callback) {\n throw new Error('Missing required arguments');\n }\n\n if (!is.string(type)) {\n throw new TypeError('Second argument must be a String');\n }\n\n if (!is.fn(callback)) {\n throw new TypeError('Third argument must be a Function');\n }\n\n if (is.node(target)) {\n return listenNode(target, type, callback);\n }\n else if (is.nodeList(target)) {\n return listenNodeList(target, type, callback);\n }\n else if (is.string(target)) {\n return listenSelector(target, type, callback);\n }\n else {\n throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');\n }\n}\n\n/**\n * Adds an event listener to a HTML element\n * and returns a remove listener function.\n *\n * @param {HTMLElement} node\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNode(node, type, callback) {\n node.addEventListener(type, callback);\n\n return {\n destroy: function() {\n node.removeEventListener(type, callback);\n }\n }\n}\n\n/**\n * Add an event listener to a list of HTML elements\n * and returns a remove listener function.\n *\n * @param {NodeList|HTMLCollection} nodeList\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenNodeList(nodeList, type, callback) {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.addEventListener(type, callback);\n });\n\n return {\n destroy: function() {\n Array.prototype.forEach.call(nodeList, function(node) {\n node.removeEventListener(type, callback);\n });\n }\n }\n}\n\n/**\n * Add an event listener to a selector\n * and returns a remove listener function.\n *\n * @param {String} selector\n * @param {String} type\n * @param {Function} callback\n * @return {Object}\n */\nfunction listenSelector(selector, type, callback) {\n return delegate(document.body, selector, type, callback);\n}\n\nmodule.exports = listen;\n\n\n/***/ }),\n\n/***/ 817:\n/***/ (function(module) {\n\nfunction select(element) {\n var selectedText;\n\n if (element.nodeName === 'SELECT') {\n element.focus();\n\n selectedText = element.value;\n }\n else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {\n var isReadOnly = element.hasAttribute('readonly');\n\n if (!isReadOnly) {\n element.setAttribute('readonly', '');\n }\n\n element.select();\n element.setSelectionRange(0, element.value.length);\n\n if (!isReadOnly) {\n element.removeAttribute('readonly');\n }\n\n selectedText = element.value;\n }\n else {\n if (element.hasAttribute('contenteditable')) {\n element.focus();\n }\n\n var selection = window.getSelection();\n var range = document.createRange();\n\n range.selectNodeContents(element);\n selection.removeAllRanges();\n selection.addRange(range);\n\n selectedText = selection.toString();\n }\n\n return selectedText;\n}\n\nmodule.exports = select;\n\n\n/***/ }),\n\n/***/ 279:\n/***/ (function(module) {\n\nfunction E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n\n\n/***/ })\n\n/******/ \t});\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(__webpack_module_cache__[moduleId]) {\n/******/ \t\t\treturn __webpack_module_cache__[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t/* webpack/runtime/compat get default export */\n/******/ \t!function() {\n/******/ \t\t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t\t__webpack_require__.n = function(module) {\n/******/ \t\t\tvar getter = module && module.__esModule ?\n/******/ \t\t\t\tfunction() { return module['default']; } :\n/******/ \t\t\t\tfunction() { return module; };\n/******/ \t\t\t__webpack_require__.d(getter, { a: getter });\n/******/ \t\t\treturn getter;\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/define property getters */\n/******/ \t!function() {\n/******/ \t\t// define getter functions for harmony exports\n/******/ \t\t__webpack_require__.d = function(exports, definition) {\n/******/ \t\t\tfor(var key in definition) {\n/******/ \t\t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t\t}\n/******/ \t\t\t}\n/******/ \t\t};\n/******/ \t}();\n/******/ \t\n/******/ \t/* webpack/runtime/hasOwnProperty shorthand */\n/******/ \t!function() {\n/******/ \t\t__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }\n/******/ \t}();\n/******/ \t\n/************************************************************************/\n/******/ \t// module exports must be returned from runtime so entry inlining is disabled\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(686);\n/******/ })()\n.default;\n});", "/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n\n'use strict';\n\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n\n/**\n * Escape special characters in the given string of html.\n *\n * @param {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n var str = '' + string;\n var match = matchHtmlRegExp.exec(str);\n\n if (!match) {\n return str;\n }\n\n var escape;\n var html = '';\n var index = 0;\n var lastIndex = 0;\n\n for (index = match.index; index < str.length; index++) {\n switch (str.charCodeAt(index)) {\n case 34: // \"\n escape = '"';\n break;\n case 38: // &\n escape = '&';\n break;\n case 39: // '\n escape = ''';\n break;\n case 60: // <\n escape = '<';\n break;\n case 62: // >\n escape = '>';\n break;\n default:\n continue;\n }\n\n if (lastIndex !== index) {\n html += str.substring(lastIndex, index);\n }\n\n lastIndex = index + 1;\n html += escape;\n }\n\n return lastIndex !== index\n ? html + str.substring(lastIndex, index)\n : html;\n}\n", "/*\n * Copyright (c) 2016-2024 Martin Donath \n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to\n * deal in the Software without restriction, including without limitation the\n * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n * sell copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\n * IN THE SOFTWARE.\n */\n\nimport \"focus-visible\"\n\nimport {\n EMPTY,\n NEVER,\n Observable,\n Subject,\n defer,\n delay,\n filter,\n map,\n merge,\n mergeWith,\n shareReplay,\n switchMap\n} from \"rxjs\"\n\nimport { configuration, feature } from \"./_\"\nimport {\n at,\n getActiveElement,\n getOptionalElement,\n requestJSON,\n setLocation,\n setToggle,\n watchDocument,\n watchKeyboard,\n watchLocation,\n watchLocationTarget,\n watchMedia,\n watchPrint,\n watchScript,\n watchViewport\n} from \"./browser\"\nimport {\n getComponentElement,\n getComponentElements,\n mountAnnounce,\n mountBackToTop,\n mountConsent,\n mountContent,\n mountDialog,\n mountHeader,\n mountHeaderTitle,\n mountPalette,\n mountProgress,\n mountSearch,\n mountSearchHiglight,\n mountSidebar,\n mountSource,\n mountTableOfContents,\n mountTabs,\n watchHeader,\n watchMain\n} from \"./components\"\nimport {\n SearchIndex,\n setupClipboardJS,\n setupInstantNavigation,\n setupVersionSelector\n} from \"./integrations\"\nimport {\n patchEllipsis,\n patchIndeterminate,\n patchScrollfix,\n patchScrolllock\n} from \"./patches\"\nimport \"./polyfills\"\n\n/* ----------------------------------------------------------------------------\n * Functions - @todo refactor\n * ------------------------------------------------------------------------- */\n\n/**\n * Fetch search index\n *\n * @returns Search index observable\n */\nfunction fetchSearchIndex(): Observable {\n if (location.protocol === \"file:\") {\n return watchScript(\n `${new URL(\"search/search_index.js\", config.base)}`\n )\n .pipe(\n // @ts-ignore - @todo fix typings\n map(() => __index),\n shareReplay(1)\n )\n } else {\n return requestJSON(\n new URL(\"search/search_index.json\", config.base)\n )\n }\n}\n\n/* ----------------------------------------------------------------------------\n * Application\n * ------------------------------------------------------------------------- */\n\n/* Yay, JavaScript is available */\ndocument.documentElement.classList.remove(\"no-js\")\ndocument.documentElement.classList.add(\"js\")\n\n/* Set up navigation observables and subjects */\nconst document$ = watchDocument()\nconst location$ = watchLocation()\nconst target$ = watchLocationTarget(location$)\nconst keyboard$ = watchKeyboard()\n\n/* Set up media observables */\nconst viewport$ = watchViewport()\nconst tablet$ = watchMedia(\"(min-width: 960px)\")\nconst screen$ = watchMedia(\"(min-width: 1220px)\")\nconst print$ = watchPrint()\n\n/* Retrieve search index, if search is enabled */\nconst config = configuration()\nconst index$ = document.forms.namedItem(\"search\")\n ? fetchSearchIndex()\n : NEVER\n\n/* Set up Clipboard.js integration */\nconst alert$ = new Subject()\nsetupClipboardJS({ alert$ })\n\n/* Set up progress indicator */\nconst progress$ = new Subject()\n\n/* Set up instant navigation, if enabled */\nif (feature(\"navigation.instant\"))\n setupInstantNavigation({ location$, viewport$, progress$ })\n .subscribe(document$)\n\n/* Set up version selector */\nif (config.version?.provider === \"mike\")\n setupVersionSelector({ document$ })\n\n/* Always close drawer and search on navigation */\nmerge(location$, target$)\n .pipe(\n delay(125)\n )\n .subscribe(() => {\n setToggle(\"drawer\", false)\n setToggle(\"search\", false)\n })\n\n/* Set up global keyboard handlers */\nkeyboard$\n .pipe(\n filter(({ mode }) => mode === \"global\")\n )\n .subscribe(key => {\n switch (key.type) {\n\n /* Go to previous page */\n case \"p\":\n case \",\":\n const prev = getOptionalElement(\"link[rel=prev]\")\n if (typeof prev !== \"undefined\")\n setLocation(prev)\n break\n\n /* Go to next page */\n case \"n\":\n case \".\":\n const next = getOptionalElement(\"link[rel=next]\")\n if (typeof next !== \"undefined\")\n setLocation(next)\n break\n\n /* Expand navigation, see https://bit.ly/3ZjG5io */\n case \"Enter\":\n const active = getActiveElement()\n if (active instanceof HTMLLabelElement)\n active.click()\n }\n })\n\n/* Set up patches */\npatchEllipsis({ viewport$, document$ })\npatchIndeterminate({ document$, tablet$ })\npatchScrollfix({ document$ })\npatchScrolllock({ viewport$, tablet$ })\n\n/* Set up header and main area observable */\nconst header$ = watchHeader(getComponentElement(\"header\"), { viewport$ })\nconst main$ = document$\n .pipe(\n map(() => getComponentElement(\"main\")),\n switchMap(el => watchMain(el, { viewport$, header$ })),\n shareReplay(1)\n )\n\n/* Set up control component observables */\nconst control$ = merge(\n\n /* Consent */\n ...getComponentElements(\"consent\")\n .map(el => mountConsent(el, { target$ })),\n\n /* Dialog */\n ...getComponentElements(\"dialog\")\n .map(el => mountDialog(el, { alert$ })),\n\n /* Header */\n ...getComponentElements(\"header\")\n .map(el => mountHeader(el, { viewport$, header$, main$ })),\n\n /* Color palette */\n ...getComponentElements(\"palette\")\n .map(el => mountPalette(el)),\n\n /* Progress bar */\n ...getComponentElements(\"progress\")\n .map(el => mountProgress(el, { progress$ })),\n\n /* Search */\n ...getComponentElements(\"search\")\n .map(el => mountSearch(el, { index$, keyboard$ })),\n\n /* Repository information */\n ...getComponentElements(\"source\")\n .map(el => mountSource(el))\n)\n\n/* Set up content component observables */\nconst content$ = defer(() => merge(\n\n /* Announcement bar */\n ...getComponentElements(\"announce\")\n .map(el => mountAnnounce(el)),\n\n /* Content */\n ...getComponentElements(\"content\")\n .map(el => mountContent(el, { viewport$, target$, print$ })),\n\n /* Search highlighting */\n ...getComponentElements(\"content\")\n .map(el => feature(\"search.highlight\")\n ? mountSearchHiglight(el, { index$, location$ })\n : EMPTY\n ),\n\n /* Header title */\n ...getComponentElements(\"header-title\")\n .map(el => mountHeaderTitle(el, { viewport$, header$ })),\n\n /* Sidebar */\n ...getComponentElements(\"sidebar\")\n .map(el => el.getAttribute(\"data-md-type\") === \"navigation\"\n ? at(screen$, () => mountSidebar(el, { viewport$, header$, main$ }))\n : at(tablet$, () => mountSidebar(el, { viewport$, header$, main$ }))\n ),\n\n /* Navigation tabs */\n ...getComponentElements(\"tabs\")\n .map(el => mountTabs(el, { viewport$, header$ })),\n\n /* Table of contents */\n ...getComponentElements(\"toc\")\n .map(el => mountTableOfContents(el, {\n viewport$, header$, main$, target$\n })),\n\n /* Back-to-top button */\n ...getComponentElements(\"top\")\n .map(el => mountBackToTop(el, { viewport$, header$, main$, target$ }))\n))\n\n/* Set up component observables */\nconst component$ = document$\n .pipe(\n switchMap(() => content$),\n mergeWith(control$),\n shareReplay(1)\n )\n\n/* Subscribe to all components */\ncomponent$.subscribe()\n\n/* ----------------------------------------------------------------------------\n * Exports\n * ------------------------------------------------------------------------- */\n\nwindow.document$ = document$ /* Document observable */\nwindow.location$ = location$ /* Location subject */\nwindow.target$ = target$ /* Location target observable */\nwindow.keyboard$ = keyboard$ /* Keyboard observable */\nwindow.viewport$ = viewport$ /* Viewport observable */\nwindow.tablet$ = tablet$ /* Media tablet observable */\nwindow.screen$ = screen$ /* Media screen observable */\nwindow.print$ = print$ /* Media print observable */\nwindow.alert$ = alert$ /* Alert subject */\nwindow.progress$ = progress$ /* Progress indicator subject */\nwindow.component$ = component$ /* Component observable */\n", "/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n", "/**\n * Returns true if the object is a function.\n * @param value The value to check\n */\nexport function isFunction(value: any): value is (...args: any[]) => any {\n return typeof value === 'function';\n}\n", "/**\n * Used to create Error subclasses until the community moves away from ES5.\n *\n * This is because compiling from TypeScript down to ES5 has issues with subclassing Errors\n * as well as other built-in types: https://github.com/Microsoft/TypeScript/issues/12123\n *\n * @param createImpl A factory function to create the actual constructor implementation. The returned\n * function should be a named function that calls `_super` internally.\n */\nexport function createErrorClass(createImpl: (_super: any) => any): T {\n const _super = (instance: any) => {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n\n const ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\n", "import { createErrorClass } from './createErrorClass';\n\nexport interface UnsubscriptionError extends Error {\n readonly errors: any[];\n}\n\nexport interface UnsubscriptionErrorCtor {\n /**\n * @deprecated Internal implementation detail. Do not construct error instances.\n * Cannot be tagged as internal: https://github.com/ReactiveX/rxjs/issues/6269\n */\n new (errors: any[]): UnsubscriptionError;\n}\n\n/**\n * An error thrown when one or more errors have occurred during the\n * `unsubscribe` of a {@link Subscription}.\n */\nexport const UnsubscriptionError: UnsubscriptionErrorCtor = createErrorClass(\n (_super) =>\n function UnsubscriptionErrorImpl(this: any, errors: (Error | string)[]) {\n _super(this);\n this.message = errors\n ? `${errors.length} errors occurred during unsubscription:\n${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\\n ')}`\n : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n }\n);\n", "/**\n * Removes an item from an array, mutating it.\n * @param arr The array to remove the item from\n * @param item The item to remove\n */\nexport function arrRemove(arr: T[] | undefined | null, item: T) {\n if (arr) {\n const index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\n", "import { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nimport { SubscriptionLike, TeardownLogic, Unsubscribable } from './types';\nimport { arrRemove } from './util/arrRemove';\n\n/**\n * Represents a disposable resource, such as the execution of an Observable. A\n * Subscription has one important method, `unsubscribe`, that takes no argument\n * and just disposes the resource held by the subscription.\n *\n * Additionally, subscriptions may be grouped together through the `add()`\n * method, which will attach a child Subscription to the current Subscription.\n * When a Subscription is unsubscribed, all its children (and its grandchildren)\n * will be unsubscribed as well.\n *\n * @class Subscription\n */\nexport class Subscription implements SubscriptionLike {\n /** @nocollapse */\n public static EMPTY = (() => {\n const empty = new Subscription();\n empty.closed = true;\n return empty;\n })();\n\n /**\n * A flag to indicate whether this Subscription has already been unsubscribed.\n */\n public closed = false;\n\n private _parentage: Subscription[] | Subscription | null = null;\n\n /**\n * The list of registered finalizers to execute upon unsubscription. Adding and removing from this\n * list occurs in the {@link #add} and {@link #remove} methods.\n */\n private _finalizers: Exclude[] | null = null;\n\n /**\n * @param initialTeardown A function executed first as part of the finalization\n * process that is kicked off when {@link #unsubscribe} is called.\n */\n constructor(private initialTeardown?: () => void) {}\n\n /**\n * Disposes the resources held by the subscription. May, for instance, cancel\n * an ongoing Observable execution or cancel any other type of work that\n * started when the Subscription was created.\n * @return {void}\n */\n unsubscribe(): void {\n let errors: any[] | undefined;\n\n if (!this.closed) {\n this.closed = true;\n\n // Remove this from it's parents.\n const { _parentage } = this;\n if (_parentage) {\n this._parentage = null;\n if (Array.isArray(_parentage)) {\n for (const parent of _parentage) {\n parent.remove(this);\n }\n } else {\n _parentage.remove(this);\n }\n }\n\n const { initialTeardown: initialFinalizer } = this;\n if (isFunction(initialFinalizer)) {\n try {\n initialFinalizer();\n } catch (e) {\n errors = e instanceof UnsubscriptionError ? e.errors : [e];\n }\n }\n\n const { _finalizers } = this;\n if (_finalizers) {\n this._finalizers = null;\n for (const finalizer of _finalizers) {\n try {\n execFinalizer(finalizer);\n } catch (err) {\n errors = errors ?? [];\n if (err instanceof UnsubscriptionError) {\n errors = [...errors, ...err.errors];\n } else {\n errors.push(err);\n }\n }\n }\n }\n\n if (errors) {\n throw new UnsubscriptionError(errors);\n }\n }\n }\n\n /**\n * Adds a finalizer to this subscription, so that finalization will be unsubscribed/called\n * when this subscription is unsubscribed. If this subscription is already {@link #closed},\n * because it has already been unsubscribed, then whatever finalizer is passed to it\n * will automatically be executed (unless the finalizer itself is also a closed subscription).\n *\n * Closed Subscriptions cannot be added as finalizers to any subscription. Adding a closed\n * subscription to a any subscription will result in no operation. (A noop).\n *\n * Adding a subscription to itself, or adding `null` or `undefined` will not perform any\n * operation at all. (A noop).\n *\n * `Subscription` instances that are added to this instance will automatically remove themselves\n * if they are unsubscribed. Functions and {@link Unsubscribable} objects that you wish to remove\n * will need to be removed manually with {@link #remove}\n *\n * @param teardown The finalization logic to add to this subscription.\n */\n add(teardown: TeardownLogic): void {\n // Only add the finalizer if it's not undefined\n // and don't add a subscription to itself.\n if (teardown && teardown !== this) {\n if (this.closed) {\n // If this subscription is already closed,\n // execute whatever finalizer is handed to it automatically.\n execFinalizer(teardown);\n } else {\n if (teardown instanceof Subscription) {\n // We don't add closed subscriptions, and we don't add the same subscription\n // twice. Subscription unsubscribe is idempotent.\n if (teardown.closed || teardown._hasParent(this)) {\n return;\n }\n teardown._addParent(this);\n }\n (this._finalizers = this._finalizers ?? []).push(teardown);\n }\n }\n }\n\n /**\n * Checks to see if a this subscription already has a particular parent.\n * This will signal that this subscription has already been added to the parent in question.\n * @param parent the parent to check for\n */\n private _hasParent(parent: Subscription) {\n const { _parentage } = this;\n return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n }\n\n /**\n * Adds a parent to this subscription so it can be removed from the parent if it\n * unsubscribes on it's own.\n *\n * NOTE: THIS ASSUMES THAT {@link _hasParent} HAS ALREADY BEEN CHECKED.\n * @param parent The parent subscription to add\n */\n private _addParent(parent: Subscription) {\n const { _parentage } = this;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n }\n\n /**\n * Called on a child when it is removed via {@link #remove}.\n * @param parent The parent to remove\n */\n private _removeParent(parent: Subscription) {\n const { _parentage } = this;\n if (_parentage === parent) {\n this._parentage = null;\n } else if (Array.isArray(_parentage)) {\n arrRemove(_parentage, parent);\n }\n }\n\n /**\n * Removes a finalizer from this subscription that was previously added with the {@link #add} method.\n *\n * Note that `Subscription` instances, when unsubscribed, will automatically remove themselves\n * from every other `Subscription` they have been added to. This means that using the `remove` method\n * is not a common thing and should be used thoughtfully.\n *\n * If you add the same finalizer instance of a function or an unsubscribable object to a `Subscription` instance\n * more than once, you will need to call `remove` the same number of times to remove all instances.\n *\n * All finalizer instances are removed to free up memory upon unsubscription.\n *\n * @param teardown The finalizer to remove from this subscription\n */\n remove(teardown: Exclude): void {\n const { _finalizers } = this;\n _finalizers && arrRemove(_finalizers, teardown);\n\n if (teardown instanceof Subscription) {\n teardown._removeParent(this);\n }\n }\n}\n\nexport const EMPTY_SUBSCRIPTION = Subscription.EMPTY;\n\nexport function isSubscription(value: any): value is Subscription {\n return (\n value instanceof Subscription ||\n (value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe))\n );\n}\n\nfunction execFinalizer(finalizer: Unsubscribable | (() => void)) {\n if (isFunction(finalizer)) {\n finalizer();\n } else {\n finalizer.unsubscribe();\n }\n}\n", "import { Subscriber } from './Subscriber';\nimport { ObservableNotification } from './types';\n\n/**\n * The {@link GlobalConfig} object for RxJS. It is used to configure things\n * like how to react on unhandled errors.\n */\nexport const config: GlobalConfig = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false,\n};\n\n/**\n * The global configuration object for RxJS, used to configure things\n * like how to react on unhandled errors. Accessible via {@link config}\n * object.\n */\nexport interface GlobalConfig {\n /**\n * A registration point for unhandled errors from RxJS. These are errors that\n * cannot were not handled by consuming code in the usual subscription path. For\n * example, if you have this configured, and you subscribe to an observable without\n * providing an error handler, errors from that subscription will end up here. This\n * will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onUnhandledError: ((err: any) => void) | null;\n\n /**\n * A registration point for notifications that cannot be sent to subscribers because they\n * have completed, errored or have been explicitly unsubscribed. By default, next, complete\n * and error notifications sent to stopped subscribers are noops. However, sometimes callers\n * might want a different behavior. For example, with sources that attempt to report errors\n * to stopped subscribers, a caller can configure RxJS to throw an unhandled error instead.\n * This will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onStoppedNotification: ((notification: ObservableNotification, subscriber: Subscriber) => void) | null;\n\n /**\n * The promise constructor used by default for {@link Observable#toPromise toPromise} and {@link Observable#forEach forEach}\n * methods.\n *\n * @deprecated As of version 8, RxJS will no longer support this sort of injection of a\n * Promise constructor. If you need a Promise implementation other than native promises,\n * please polyfill/patch Promise as you see appropriate. Will be removed in v8.\n */\n Promise?: PromiseConstructorLike;\n\n /**\n * If true, turns on synchronous error rethrowing, which is a deprecated behavior\n * in v6 and higher. This behavior enables bad patterns like wrapping a subscribe\n * call in a try/catch block. It also enables producer interference, a nasty bug\n * where a multicast can be broken for all observers by a downstream consumer with\n * an unhandled error. DO NOT USE THIS FLAG UNLESS IT'S NEEDED TO BUY TIME\n * FOR MIGRATION REASONS.\n *\n * @deprecated As of version 8, RxJS will no longer support synchronous throwing\n * of unhandled errors. All errors will be thrown on a separate call stack to prevent bad\n * behaviors described above. Will be removed in v8.\n */\n useDeprecatedSynchronousErrorHandling: boolean;\n\n /**\n * If true, enables an as-of-yet undocumented feature from v5: The ability to access\n * `unsubscribe()` via `this` context in `next` functions created in observers passed\n * to `subscribe`.\n *\n * This is being removed because the performance was severely problematic, and it could also cause\n * issues when types other than POJOs are passed to subscribe as subscribers, as they will likely have\n * their `this` context overwritten.\n *\n * @deprecated As of version 8, RxJS will no longer support altering the\n * context of next functions provided as part of an observer to Subscribe. Instead,\n * you will have access to a subscription or a signal or token that will allow you to do things like\n * unsubscribe and test closed status. Will be removed in v8.\n */\n useDeprecatedNextContext: boolean;\n}\n", "import type { TimerHandle } from './timerHandle';\ntype SetTimeoutFunction = (handler: () => void, timeout?: number, ...args: any[]) => TimerHandle;\ntype ClearTimeoutFunction = (handle: TimerHandle) => void;\n\ninterface TimeoutProvider {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n delegate:\n | {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n }\n | undefined;\n}\n\nexport const timeoutProvider: TimeoutProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n setTimeout(handler: () => void, timeout?: number, ...args) {\n const { delegate } = timeoutProvider;\n if (delegate?.setTimeout) {\n return delegate.setTimeout(handler, timeout, ...args);\n }\n return setTimeout(handler, timeout, ...args);\n },\n clearTimeout(handle) {\n const { delegate } = timeoutProvider;\n return (delegate?.clearTimeout || clearTimeout)(handle as any);\n },\n delegate: undefined,\n};\n", "import { config } from '../config';\nimport { timeoutProvider } from '../scheduler/timeoutProvider';\n\n/**\n * Handles an error on another job either with the user-configured {@link onUnhandledError},\n * or by throwing it on that new job so it can be picked up by `window.onerror`, `process.on('error')`, etc.\n *\n * This should be called whenever there is an error that is out-of-band with the subscription\n * or when an error hits a terminal boundary of the subscription and no error handler was provided.\n *\n * @param err the error to report\n */\nexport function reportUnhandledError(err: any) {\n timeoutProvider.setTimeout(() => {\n const { onUnhandledError } = config;\n if (onUnhandledError) {\n // Execute the user-configured error handler.\n onUnhandledError(err);\n } else {\n // Throw so it is picked up by the runtime's uncaught error mechanism.\n throw err;\n }\n });\n}\n", "/* tslint:disable:no-empty */\nexport function noop() { }\n", "import { CompleteNotification, NextNotification, ErrorNotification } from './types';\n\n/**\n * A completion object optimized for memory use and created to be the\n * same \"shape\" as other notifications in v8.\n * @internal\n */\nexport const COMPLETE_NOTIFICATION = (() => createNotification('C', undefined, undefined) as CompleteNotification)();\n\n/**\n * Internal use only. Creates an optimized error notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function errorNotification(error: any): ErrorNotification {\n return createNotification('E', undefined, error) as any;\n}\n\n/**\n * Internal use only. Creates an optimized next notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function nextNotification(value: T) {\n return createNotification('N', value, undefined) as NextNotification;\n}\n\n/**\n * Ensures that all notifications created internally have the same \"shape\" in v8.\n *\n * TODO: This is only exported to support a crazy legacy test in `groupBy`.\n * @internal\n */\nexport function createNotification(kind: 'N' | 'E' | 'C', value: any, error: any) {\n return {\n kind,\n value,\n error,\n };\n}\n", "import { config } from '../config';\n\nlet context: { errorThrown: boolean; error: any } | null = null;\n\n/**\n * Handles dealing with errors for super-gross mode. Creates a context, in which\n * any synchronously thrown errors will be passed to {@link captureError}. Which\n * will record the error such that it will be rethrown after the call back is complete.\n * TODO: Remove in v8\n * @param cb An immediately executed function.\n */\nexport function errorContext(cb: () => void) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n const isRoot = !context;\n if (isRoot) {\n context = { errorThrown: false, error: null };\n }\n cb();\n if (isRoot) {\n const { errorThrown, error } = context!;\n context = null;\n if (errorThrown) {\n throw error;\n }\n }\n } else {\n // This is the general non-deprecated path for everyone that\n // isn't crazy enough to use super-gross mode (useDeprecatedSynchronousErrorHandling)\n cb();\n }\n}\n\n/**\n * Captures errors only in super-gross mode.\n * @param err the error to capture\n */\nexport function captureError(err: any) {\n if (config.useDeprecatedSynchronousErrorHandling && context) {\n context.errorThrown = true;\n context.error = err;\n }\n}\n", "import { isFunction } from './util/isFunction';\nimport { Observer, ObservableNotification } from './types';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nimport { captureError } from './util/errorContext';\n\n/**\n * Implements the {@link Observer} interface and extends the\n * {@link Subscription} class. While the {@link Observer} is the public API for\n * consuming the values of an {@link Observable}, all Observers get converted to\n * a Subscriber, in order to provide Subscription-like capabilities such as\n * `unsubscribe`. Subscriber is a common type in RxJS, and crucial for\n * implementing operators, but it is rarely used as a public API.\n *\n * @class Subscriber\n */\nexport class Subscriber extends Subscription implements Observer {\n /**\n * A static factory for a Subscriber, given a (potentially partial) definition\n * of an Observer.\n * @param next The `next` callback of an Observer.\n * @param error The `error` callback of an\n * Observer.\n * @param complete The `complete` callback of an\n * Observer.\n * @return A Subscriber wrapping the (partially defined)\n * Observer represented by the given arguments.\n * @nocollapse\n * @deprecated Do not use. Will be removed in v8. There is no replacement for this\n * method, and there is no reason to be creating instances of `Subscriber` directly.\n * If you have a specific use case, please file an issue.\n */\n static create(next?: (x?: T) => void, error?: (e?: any) => void, complete?: () => void): Subscriber {\n return new SafeSubscriber(next, error, complete);\n }\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected isStopped: boolean = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected destination: Subscriber | Observer; // this `any` is the escape hatch to erase extra type param (e.g. R)\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * There is no reason to directly create an instance of Subscriber. This type is exported for typings reasons.\n */\n constructor(destination?: Subscriber | Observer) {\n super();\n if (destination) {\n this.destination = destination;\n // Automatically chain subscriptions together here.\n // if destination is a Subscription, then it is a Subscriber.\n if (isSubscription(destination)) {\n destination.add(this);\n }\n } else {\n this.destination = EMPTY_OBSERVER;\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `next` from\n * the Observable, with a value. The Observable may call this method 0 or more\n * times.\n * @param {T} [value] The `next` value.\n * @return {void}\n */\n next(value?: T): void {\n if (this.isStopped) {\n handleStoppedNotification(nextNotification(value), this);\n } else {\n this._next(value!);\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `error` from\n * the Observable, with an attached `Error`. Notifies the Observer that\n * the Observable has experienced an error condition.\n * @param {any} [err] The `error` exception.\n * @return {void}\n */\n error(err?: any): void {\n if (this.isStopped) {\n handleStoppedNotification(errorNotification(err), this);\n } else {\n this.isStopped = true;\n this._error(err);\n }\n }\n\n /**\n * The {@link Observer} callback to receive a valueless notification of type\n * `complete` from the Observable. Notifies the Observer that the Observable\n * has finished sending push-based notifications.\n * @return {void}\n */\n complete(): void {\n if (this.isStopped) {\n handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n } else {\n this.isStopped = true;\n this._complete();\n }\n }\n\n unsubscribe(): void {\n if (!this.closed) {\n this.isStopped = true;\n super.unsubscribe();\n this.destination = null!;\n }\n }\n\n protected _next(value: T): void {\n this.destination.next(value);\n }\n\n protected _error(err: any): void {\n try {\n this.destination.error(err);\n } finally {\n this.unsubscribe();\n }\n }\n\n protected _complete(): void {\n try {\n this.destination.complete();\n } finally {\n this.unsubscribe();\n }\n }\n}\n\n/**\n * This bind is captured here because we want to be able to have\n * compatibility with monoid libraries that tend to use a method named\n * `bind`. In particular, a library called Monio requires this.\n */\nconst _bind = Function.prototype.bind;\n\nfunction bind any>(fn: Fn, thisArg: any): Fn {\n return _bind.call(fn, thisArg);\n}\n\n/**\n * Internal optimization only, DO NOT EXPOSE.\n * @internal\n */\nclass ConsumerObserver implements Observer {\n constructor(private partialObserver: Partial>) {}\n\n next(value: T): void {\n const { partialObserver } = this;\n if (partialObserver.next) {\n try {\n partialObserver.next(value);\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n\n error(err: any): void {\n const { partialObserver } = this;\n if (partialObserver.error) {\n try {\n partialObserver.error(err);\n } catch (error) {\n handleUnhandledError(error);\n }\n } else {\n handleUnhandledError(err);\n }\n }\n\n complete(): void {\n const { partialObserver } = this;\n if (partialObserver.complete) {\n try {\n partialObserver.complete();\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n}\n\nexport class SafeSubscriber extends Subscriber {\n constructor(\n observerOrNext?: Partial> | ((value: T) => void) | null,\n error?: ((e?: any) => void) | null,\n complete?: (() => void) | null\n ) {\n super();\n\n let partialObserver: Partial>;\n if (isFunction(observerOrNext) || !observerOrNext) {\n // The first argument is a function, not an observer. The next\n // two arguments *could* be observers, or they could be empty.\n partialObserver = {\n next: (observerOrNext ?? undefined) as (((value: T) => void) | undefined),\n error: error ?? undefined,\n complete: complete ?? undefined,\n };\n } else {\n // The first argument is a partial observer.\n let context: any;\n if (this && config.useDeprecatedNextContext) {\n // This is a deprecated path that made `this.unsubscribe()` available in\n // next handler functions passed to subscribe. This only exists behind a flag\n // now, as it is *very* slow.\n context = Object.create(observerOrNext);\n context.unsubscribe = () => this.unsubscribe();\n partialObserver = {\n next: observerOrNext.next && bind(observerOrNext.next, context),\n error: observerOrNext.error && bind(observerOrNext.error, context),\n complete: observerOrNext.complete && bind(observerOrNext.complete, context),\n };\n } else {\n // The \"normal\" path. Just use the partial observer directly.\n partialObserver = observerOrNext;\n }\n }\n\n // Wrap the partial observer to ensure it's a full observer, and\n // make sure proper error handling is accounted for.\n this.destination = new ConsumerObserver(partialObserver);\n }\n}\n\nfunction handleUnhandledError(error: any) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n captureError(error);\n } else {\n // Ideal path, we report this as an unhandled error,\n // which is thrown on a new call stack.\n reportUnhandledError(error);\n }\n}\n\n/**\n * An error handler used when no error handler was supplied\n * to the SafeSubscriber -- meaning no error handler was supplied\n * do the `subscribe` call on our observable.\n * @param err The error to handle\n */\nfunction defaultErrorHandler(err: any) {\n throw err;\n}\n\n/**\n * A handler for notifications that cannot be sent to a stopped subscriber.\n * @param notification The notification being sent\n * @param subscriber The stopped subscriber\n */\nfunction handleStoppedNotification(notification: ObservableNotification, subscriber: Subscriber) {\n const { onStoppedNotification } = config;\n onStoppedNotification && timeoutProvider.setTimeout(() => onStoppedNotification(notification, subscriber));\n}\n\n/**\n * The observer used as a stub for subscriptions where the user did not\n * pass any arguments to `subscribe`. Comes with the default error handling\n * behavior.\n */\nexport const EMPTY_OBSERVER: Readonly> & { closed: true } = {\n closed: true,\n next: noop,\n error: defaultErrorHandler,\n complete: noop,\n};\n", "/**\n * Symbol.observable or a string \"@@observable\". Used for interop\n *\n * @deprecated We will no longer be exporting this symbol in upcoming versions of RxJS.\n * Instead polyfill and use Symbol.observable directly *or* use https://www.npmjs.com/package/symbol-observable\n */\nexport const observable: string | symbol = (() => (typeof Symbol === 'function' && Symbol.observable) || '@@observable')();\n", "/**\n * This function takes one parameter and just returns it. Simply put,\n * this is like `(x: T): T => x`.\n *\n * ## Examples\n *\n * This is useful in some cases when using things like `mergeMap`\n *\n * ```ts\n * import { interval, take, map, range, mergeMap, identity } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(5));\n *\n * const result$ = source$.pipe(\n * map(i => range(i)),\n * mergeMap(identity) // same as mergeMap(x => x)\n * );\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * Or when you want to selectively apply an operator\n *\n * ```ts\n * import { interval, take, identity } from 'rxjs';\n *\n * const shouldLimit = () => Math.random() < 0.5;\n *\n * const source$ = interval(1000);\n *\n * const result$ = source$.pipe(shouldLimit() ? take(5) : identity);\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * @param x Any value that is returned by this function\n * @returns The value passed as the first parameter to this function\n */\nexport function identity(x: T): T {\n return x;\n}\n", "import { identity } from './identity';\nimport { UnaryFunction } from '../types';\n\nexport function pipe(): typeof identity;\nexport function pipe(fn1: UnaryFunction): UnaryFunction;\nexport function pipe(fn1: UnaryFunction, fn2: UnaryFunction): UnaryFunction;\nexport function pipe(fn1: UnaryFunction, fn2: UnaryFunction, fn3: UnaryFunction): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction,\n fn9: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction,\n fn9: UnaryFunction,\n ...fns: UnaryFunction[]\n): UnaryFunction;\n\n/**\n * pipe() can be called on one or more functions, each of which can take one argument (\"UnaryFunction\")\n * and uses it to return a value.\n * It returns a function that takes one argument, passes it to the first UnaryFunction, and then\n * passes the result to the next one, passes that result to the next one, and so on. \n */\nexport function pipe(...fns: Array>): UnaryFunction {\n return pipeFromArray(fns);\n}\n\n/** @internal */\nexport function pipeFromArray(fns: Array>): UnaryFunction {\n if (fns.length === 0) {\n return identity as UnaryFunction;\n }\n\n if (fns.length === 1) {\n return fns[0];\n }\n\n return function piped(input: T): R {\n return fns.reduce((prev: any, fn: UnaryFunction) => fn(prev), input as any);\n };\n}\n", "import { Operator } from './Operator';\nimport { SafeSubscriber, Subscriber } from './Subscriber';\nimport { isSubscription, Subscription } from './Subscription';\nimport { TeardownLogic, OperatorFunction, Subscribable, Observer } from './types';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nimport { isFunction } from './util/isFunction';\nimport { errorContext } from './util/errorContext';\n\n/**\n * A representation of any set of values over any amount of time. This is the most basic building block\n * of RxJS.\n *\n * @class Observable\n */\nexport class Observable implements Subscribable {\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n source: Observable | undefined;\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n operator: Operator | undefined;\n\n /**\n * @constructor\n * @param {Function} subscribe the function that is called when the Observable is\n * initially subscribed to. This function is given a Subscriber, to which new values\n * can be `next`ed, or an `error` method can be called to raise an error, or\n * `complete` can be called to notify of a successful completion.\n */\n constructor(subscribe?: (this: Observable, subscriber: Subscriber) => TeardownLogic) {\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n\n // HACK: Since TypeScript inherits static properties too, we have to\n // fight against TypeScript here so Subject can have a different static create signature\n /**\n * Creates a new Observable by calling the Observable constructor\n * @owner Observable\n * @method create\n * @param {Function} subscribe? the subscriber function to be passed to the Observable constructor\n * @return {Observable} a new observable\n * @nocollapse\n * @deprecated Use `new Observable()` instead. Will be removed in v8.\n */\n static create: (...args: any[]) => any = (subscribe?: (subscriber: Subscriber) => TeardownLogic) => {\n return new Observable(subscribe);\n };\n\n /**\n * Creates a new Observable, with this Observable instance as the source, and the passed\n * operator defined as the new observable's operator.\n * @method lift\n * @param operator the operator defining the operation to take on the observable\n * @return a new observable with the Operator applied\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * If you have implemented an operator using `lift`, it is recommended that you create an\n * operator by simply returning `new Observable()` directly. See \"Creating new operators from\n * scratch\" section here: https://rxjs.dev/guide/operators\n */\n lift(operator?: Operator): Observable {\n const observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n }\n\n subscribe(observerOrNext?: Partial> | ((value: T) => void)): Subscription;\n /** @deprecated Instead of passing separate callback arguments, use an observer argument. Signatures taking separate callback arguments will be removed in v8. Details: https://rxjs.dev/deprecations/subscribe-arguments */\n subscribe(next?: ((value: T) => void) | null, error?: ((error: any) => void) | null, complete?: (() => void) | null): Subscription;\n /**\n * Invokes an execution of an Observable and registers Observer handlers for notifications it will emit.\n *\n * Use it when you have all these Observables, but still nothing is happening.\n *\n * `subscribe` is not a regular operator, but a method that calls Observable's internal `subscribe` function. It\n * might be for example a function that you passed to Observable's constructor, but most of the time it is\n * a library implementation, which defines what will be emitted by an Observable, and when it be will emitted. This means\n * that calling `subscribe` is actually the moment when Observable starts its work, not when it is created, as it is often\n * the thought.\n *\n * Apart from starting the execution of an Observable, this method allows you to listen for values\n * that an Observable emits, as well as for when it completes or errors. You can achieve this in two\n * of the following ways.\n *\n * The first way is creating an object that implements {@link Observer} interface. It should have methods\n * defined by that interface, but note that it should be just a regular JavaScript object, which you can create\n * yourself in any way you want (ES6 class, classic function constructor, object literal etc.). In particular, do\n * not attempt to use any RxJS implementation details to create Observers - you don't need them. Remember also\n * that your object does not have to implement all methods. If you find yourself creating a method that doesn't\n * do anything, you can simply omit it. Note however, if the `error` method is not provided and an error happens,\n * it will be thrown asynchronously. Errors thrown asynchronously cannot be caught using `try`/`catch`. Instead,\n * use the {@link onUnhandledError} configuration option or use a runtime handler (like `window.onerror` or\n * `process.on('error)`) to be notified of unhandled errors. Because of this, it's recommended that you provide\n * an `error` method to avoid missing thrown errors.\n *\n * The second way is to give up on Observer object altogether and simply provide callback functions in place of its methods.\n * This means you can provide three functions as arguments to `subscribe`, where the first function is equivalent\n * of a `next` method, the second of an `error` method and the third of a `complete` method. Just as in case of an Observer,\n * if you do not need to listen for something, you can omit a function by passing `undefined` or `null`,\n * since `subscribe` recognizes these functions by where they were placed in function call. When it comes\n * to the `error` function, as with an Observer, if not provided, errors emitted by an Observable will be thrown asynchronously.\n *\n * You can, however, subscribe with no parameters at all. This may be the case where you're not interested in terminal events\n * and you also handled emissions internally by using operators (e.g. using `tap`).\n *\n * Whichever style of calling `subscribe` you use, in both cases it returns a Subscription object.\n * This object allows you to call `unsubscribe` on it, which in turn will stop the work that an Observable does and will clean\n * up all resources that an Observable used. Note that cancelling a subscription will not call `complete` callback\n * provided to `subscribe` function, which is reserved for a regular completion signal that comes from an Observable.\n *\n * Remember that callbacks provided to `subscribe` are not guaranteed to be called asynchronously.\n * It is an Observable itself that decides when these functions will be called. For example {@link of}\n * by default emits all its values synchronously. Always check documentation for how given Observable\n * will behave when subscribed and if its default behavior can be modified with a `scheduler`.\n *\n * #### Examples\n *\n * Subscribe with an {@link guide/observer Observer}\n *\n * ```ts\n * import { of } from 'rxjs';\n *\n * const sumObserver = {\n * sum: 0,\n * next(value) {\n * console.log('Adding: ' + value);\n * this.sum = this.sum + value;\n * },\n * error() {\n * // We actually could just remove this method,\n * // since we do not really care about errors right now.\n * },\n * complete() {\n * console.log('Sum equals: ' + this.sum);\n * }\n * };\n *\n * of(1, 2, 3) // Synchronously emits 1, 2, 3 and then completes.\n * .subscribe(sumObserver);\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Subscribe with functions ({@link deprecations/subscribe-arguments deprecated})\n *\n * ```ts\n * import { of } from 'rxjs'\n *\n * let sum = 0;\n *\n * of(1, 2, 3).subscribe(\n * value => {\n * console.log('Adding: ' + value);\n * sum = sum + value;\n * },\n * undefined,\n * () => console.log('Sum equals: ' + sum)\n * );\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Cancel a subscription\n *\n * ```ts\n * import { interval } from 'rxjs';\n *\n * const subscription = interval(1000).subscribe({\n * next(num) {\n * console.log(num)\n * },\n * complete() {\n * // Will not be called, even when cancelling subscription.\n * console.log('completed!');\n * }\n * });\n *\n * setTimeout(() => {\n * subscription.unsubscribe();\n * console.log('unsubscribed!');\n * }, 2500);\n *\n * // Logs:\n * // 0 after 1s\n * // 1 after 2s\n * // 'unsubscribed!' after 2.5s\n * ```\n *\n * @param {Observer|Function} observerOrNext (optional) Either an observer with methods to be called,\n * or the first of three possible handlers, which is the handler for each value emitted from the subscribed\n * Observable.\n * @param {Function} error (optional) A handler for a terminal event resulting from an error. If no error handler is provided,\n * the error will be thrown asynchronously as unhandled.\n * @param {Function} complete (optional) A handler for a terminal event resulting from successful completion.\n * @return {Subscription} a subscription reference to the registered handlers\n * @method subscribe\n */\n subscribe(\n observerOrNext?: Partial> | ((value: T) => void) | null,\n error?: ((error: any) => void) | null,\n complete?: (() => void) | null\n ): Subscription {\n const subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);\n\n errorContext(() => {\n const { operator, source } = this;\n subscriber.add(\n operator\n ? // We're dealing with a subscription in the\n // operator chain to one of our lifted operators.\n operator.call(subscriber, source)\n : source\n ? // If `source` has a value, but `operator` does not, something that\n // had intimate knowledge of our API, like our `Subject`, must have\n // set it. We're going to just call `_subscribe` directly.\n this._subscribe(subscriber)\n : // In all other cases, we're likely wrapping a user-provided initializer\n // function, so we need to catch errors and handle them appropriately.\n this._trySubscribe(subscriber)\n );\n });\n\n return subscriber;\n }\n\n /** @internal */\n protected _trySubscribe(sink: Subscriber): TeardownLogic {\n try {\n return this._subscribe(sink);\n } catch (err) {\n // We don't need to return anything in this case,\n // because it's just going to try to `add()` to a subscription\n // above.\n sink.error(err);\n }\n }\n\n /**\n * Used as a NON-CANCELLABLE means of subscribing to an observable, for use with\n * APIs that expect promises, like `async/await`. You cannot unsubscribe from this.\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * #### Example\n *\n * ```ts\n * import { interval, take } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(4));\n *\n * async function getTotal() {\n * let total = 0;\n *\n * await source$.forEach(value => {\n * total += value;\n * console.log('observable -> ' + value);\n * });\n *\n * return total;\n * }\n *\n * getTotal().then(\n * total => console.log('Total: ' + total)\n * );\n *\n * // Expected:\n * // 'observable -> 0'\n * // 'observable -> 1'\n * // 'observable -> 2'\n * // 'observable -> 3'\n * // 'Total: 6'\n * ```\n *\n * @param next a handler for each value emitted by the observable\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n */\n forEach(next: (value: T) => void): Promise;\n\n /**\n * @param next a handler for each value emitted by the observable\n * @param promiseCtor a constructor function used to instantiate the Promise\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n * @deprecated Passing a Promise constructor will no longer be available\n * in upcoming versions of RxJS. This is because it adds weight to the library, for very\n * little benefit. If you need this functionality, it is recommended that you either\n * polyfill Promise, or you create an adapter to convert the returned native promise\n * to whatever promise implementation you wanted. Will be removed in v8.\n */\n forEach(next: (value: T) => void, promiseCtor: PromiseConstructorLike): Promise;\n\n forEach(next: (value: T) => void, promiseCtor?: PromiseConstructorLike): Promise {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor((resolve, reject) => {\n const subscriber = new SafeSubscriber({\n next: (value) => {\n try {\n next(value);\n } catch (err) {\n reject(err);\n subscriber.unsubscribe();\n }\n },\n error: reject,\n complete: resolve,\n });\n this.subscribe(subscriber);\n }) as Promise;\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): TeardownLogic {\n return this.source?.subscribe(subscriber);\n }\n\n /**\n * An interop point defined by the es7-observable spec https://github.com/zenparsing/es-observable\n * @method Symbol.observable\n * @return {Observable} this instance of the observable\n */\n [Symbol_observable]() {\n return this;\n }\n\n /* tslint:disable:max-line-length */\n pipe(): Observable;\n pipe(op1: OperatorFunction): Observable;\n pipe(op1: OperatorFunction, op2: OperatorFunction): Observable;\n pipe(op1: OperatorFunction, op2: OperatorFunction, op3: OperatorFunction): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction,\n op9: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction,\n op9: OperatorFunction,\n ...operations: OperatorFunction[]\n ): Observable;\n /* tslint:enable:max-line-length */\n\n /**\n * Used to stitch together functional operators into a chain.\n * @method pipe\n * @return {Observable} the Observable result of all of the operators having\n * been called in the order they were passed in.\n *\n * ## Example\n *\n * ```ts\n * import { interval, filter, map, scan } from 'rxjs';\n *\n * interval(1000)\n * .pipe(\n * filter(x => x % 2 === 0),\n * map(x => x + x),\n * scan((acc, x) => acc + x)\n * )\n * .subscribe(x => console.log(x));\n * ```\n */\n pipe(...operations: OperatorFunction[]): Observable {\n return pipeFromArray(operations)(this);\n }\n\n /* tslint:disable:max-line-length */\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(): Promise;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: typeof Promise): Promise;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: PromiseConstructorLike): Promise;\n /* tslint:enable:max-line-length */\n\n /**\n * Subscribe to this Observable and get a Promise resolving on\n * `complete` with the last emission (if any).\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * @method toPromise\n * @param [promiseCtor] a constructor function used to instantiate\n * the Promise\n * @return A Promise that resolves with the last value emit, or\n * rejects on an error. If there were no emissions, Promise\n * resolves with undefined.\n * @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise\n */\n toPromise(promiseCtor?: PromiseConstructorLike): Promise {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor((resolve, reject) => {\n let value: T | undefined;\n this.subscribe(\n (x: T) => (value = x),\n (err: any) => reject(err),\n () => resolve(value)\n );\n }) as Promise;\n }\n}\n\n/**\n * Decides between a passed promise constructor from consuming code,\n * A default configured promise constructor, and the native promise\n * constructor and returns it. If nothing can be found, it will throw\n * an error.\n * @param promiseCtor The optional promise constructor to passed by consuming code\n */\nfunction getPromiseCtor(promiseCtor: PromiseConstructorLike | undefined) {\n return promiseCtor ?? config.Promise ?? Promise;\n}\n\nfunction isObserver(value: any): value is Observer {\n return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);\n}\n\nfunction isSubscriber(value: any): value is Subscriber {\n return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));\n}\n", "import { Observable } from '../Observable';\nimport { Subscriber } from '../Subscriber';\nimport { OperatorFunction } from '../types';\nimport { isFunction } from './isFunction';\n\n/**\n * Used to determine if an object is an Observable with a lift function.\n */\nexport function hasLift(source: any): source is { lift: InstanceType['lift'] } {\n return isFunction(source?.lift);\n}\n\n/**\n * Creates an `OperatorFunction`. Used to define operators throughout the library in a concise way.\n * @param init The logic to connect the liftedSource to the subscriber at the moment of subscription.\n */\nexport function operate(\n init: (liftedSource: Observable, subscriber: Subscriber) => (() => void) | void\n): OperatorFunction {\n return (source: Observable) => {\n if (hasLift(source)) {\n return source.lift(function (this: Subscriber, liftedSource: Observable) {\n try {\n return init(liftedSource, this);\n } catch (err) {\n this.error(err);\n }\n });\n }\n throw new TypeError('Unable to lift unknown Observable type');\n };\n}\n", "import { Subscriber } from '../Subscriber';\n\n/**\n * Creates an instance of an `OperatorSubscriber`.\n * @param destination The downstream subscriber.\n * @param onNext Handles next values, only called if this subscriber is not stopped or closed. Any\n * error that occurs in this function is caught and sent to the `error` method of this subscriber.\n * @param onError Handles errors from the subscription, any errors that occur in this handler are caught\n * and send to the `destination` error handler.\n * @param onComplete Handles completion notification from the subscription. Any errors that occur in\n * this handler are sent to the `destination` error handler.\n * @param onFinalize Additional teardown logic here. This will only be called on teardown if the\n * subscriber itself is not already closed. This is called after all other teardown logic is executed.\n */\nexport function createOperatorSubscriber(\n destination: Subscriber,\n onNext?: (value: T) => void,\n onComplete?: () => void,\n onError?: (err: any) => void,\n onFinalize?: () => void\n): Subscriber {\n return new OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize);\n}\n\n/**\n * A generic helper for allowing operators to be created with a Subscriber and\n * use closures to capture necessary state from the operator function itself.\n */\nexport class OperatorSubscriber extends Subscriber {\n /**\n * Creates an instance of an `OperatorSubscriber`.\n * @param destination The downstream subscriber.\n * @param onNext Handles next values, only called if this subscriber is not stopped or closed. Any\n * error that occurs in this function is caught and sent to the `error` method of this subscriber.\n * @param onError Handles errors from the subscription, any errors that occur in this handler are caught\n * and send to the `destination` error handler.\n * @param onComplete Handles completion notification from the subscription. Any errors that occur in\n * this handler are sent to the `destination` error handler.\n * @param onFinalize Additional finalization logic here. This will only be called on finalization if the\n * subscriber itself is not already closed. This is called after all other finalization logic is executed.\n * @param shouldUnsubscribe An optional check to see if an unsubscribe call should truly unsubscribe.\n * NOTE: This currently **ONLY** exists to support the strange behavior of {@link groupBy}, where unsubscription\n * to the resulting observable does not actually disconnect from the source if there are active subscriptions\n * to any grouped observable. (DO NOT EXPOSE OR USE EXTERNALLY!!!)\n */\n constructor(\n destination: Subscriber,\n onNext?: (value: T) => void,\n onComplete?: () => void,\n onError?: (err: any) => void,\n private onFinalize?: () => void,\n private shouldUnsubscribe?: () => boolean\n ) {\n // It's important - for performance reasons - that all of this class's\n // members are initialized and that they are always initialized in the same\n // order. This will ensure that all OperatorSubscriber instances have the\n // same hidden class in V8. This, in turn, will help keep the number of\n // hidden classes involved in property accesses within the base class as\n // low as possible. If the number of hidden classes involved exceeds four,\n // the property accesses will become megamorphic and performance penalties\n // will be incurred - i.e. inline caches won't be used.\n //\n // The reasons for ensuring all instances have the same hidden class are\n // further discussed in this blog post from Benedikt Meurer:\n // https://benediktmeurer.de/2018/03/23/impact-of-polymorphism-on-component-based-frameworks-like-react/\n super(destination);\n this._next = onNext\n ? function (this: OperatorSubscriber, value: T) {\n try {\n onNext(value);\n } catch (err) {\n destination.error(err);\n }\n }\n : super._next;\n this._error = onError\n ? function (this: OperatorSubscriber, err: any) {\n try {\n onError(err);\n } catch (err) {\n // Send any errors that occur down stream.\n destination.error(err);\n } finally {\n // Ensure finalization.\n this.unsubscribe();\n }\n }\n : super._error;\n this._complete = onComplete\n ? function (this: OperatorSubscriber) {\n try {\n onComplete();\n } catch (err) {\n // Send any errors that occur down stream.\n destination.error(err);\n } finally {\n // Ensure finalization.\n this.unsubscribe();\n }\n }\n : super._complete;\n }\n\n unsubscribe() {\n if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {\n const { closed } = this;\n super.unsubscribe();\n // Execute additional teardown if we have any and we didn't already do so.\n !closed && this.onFinalize?.();\n }\n }\n}\n", "import { Subscription } from '../Subscription';\n\ninterface AnimationFrameProvider {\n schedule(callback: FrameRequestCallback): Subscription;\n requestAnimationFrame: typeof requestAnimationFrame;\n cancelAnimationFrame: typeof cancelAnimationFrame;\n delegate:\n | {\n requestAnimationFrame: typeof requestAnimationFrame;\n cancelAnimationFrame: typeof cancelAnimationFrame;\n }\n | undefined;\n}\n\nexport const animationFrameProvider: AnimationFrameProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n schedule(callback) {\n let request = requestAnimationFrame;\n let cancel: typeof cancelAnimationFrame | undefined = cancelAnimationFrame;\n const { delegate } = animationFrameProvider;\n if (delegate) {\n request = delegate.requestAnimationFrame;\n cancel = delegate.cancelAnimationFrame;\n }\n const handle = request((timestamp) => {\n // Clear the cancel function. The request has been fulfilled, so\n // attempting to cancel the request upon unsubscription would be\n // pointless.\n cancel = undefined;\n callback(timestamp);\n });\n return new Subscription(() => cancel?.(handle));\n },\n requestAnimationFrame(...args) {\n const { delegate } = animationFrameProvider;\n return (delegate?.requestAnimationFrame || requestAnimationFrame)(...args);\n },\n cancelAnimationFrame(...args) {\n const { delegate } = animationFrameProvider;\n return (delegate?.cancelAnimationFrame || cancelAnimationFrame)(...args);\n },\n delegate: undefined,\n};\n", "import { createErrorClass } from './createErrorClass';\n\nexport interface ObjectUnsubscribedError extends Error {}\n\nexport interface ObjectUnsubscribedErrorCtor {\n /**\n * @deprecated Internal implementation detail. Do not construct error instances.\n * Cannot be tagged as internal: https://github.com/ReactiveX/rxjs/issues/6269\n */\n new (): ObjectUnsubscribedError;\n}\n\n/**\n * An error thrown when an action is invalid because the object has been\n * unsubscribed.\n *\n * @see {@link Subject}\n * @see {@link BehaviorSubject}\n *\n * @class ObjectUnsubscribedError\n */\nexport const ObjectUnsubscribedError: ObjectUnsubscribedErrorCtor = createErrorClass(\n (_super) =>\n function ObjectUnsubscribedErrorImpl(this: any) {\n _super(this);\n this.name = 'ObjectUnsubscribedError';\n this.message = 'object unsubscribed';\n }\n);\n", "import { Operator } from './Operator';\nimport { Observable } from './Observable';\nimport { Subscriber } from './Subscriber';\nimport { Subscription, EMPTY_SUBSCRIPTION } from './Subscription';\nimport { Observer, SubscriptionLike, TeardownLogic } from './types';\nimport { ObjectUnsubscribedError } from './util/ObjectUnsubscribedError';\nimport { arrRemove } from './util/arrRemove';\nimport { errorContext } from './util/errorContext';\n\n/**\n * A Subject is a special type of Observable that allows values to be\n * multicasted to many Observers. Subjects are like EventEmitters.\n *\n * Every Subject is an Observable and an Observer. You can subscribe to a\n * Subject, and you can call next to feed values as well as error and complete.\n */\nexport class Subject extends Observable implements SubscriptionLike {\n closed = false;\n\n private currentObservers: Observer[] | null = null;\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n observers: Observer[] = [];\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n isStopped = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n hasError = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n thrownError: any = null;\n\n /**\n * Creates a \"subject\" by basically gluing an observer to an observable.\n *\n * @nocollapse\n * @deprecated Recommended you do not use. Will be removed at some point in the future. Plans for replacement still under discussion.\n */\n static create: (...args: any[]) => any = (destination: Observer, source: Observable): AnonymousSubject => {\n return new AnonymousSubject(destination, source);\n };\n\n constructor() {\n // NOTE: This must be here to obscure Observable's constructor.\n super();\n }\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n lift(operator: Operator): Observable {\n const subject = new AnonymousSubject(this, this);\n subject.operator = operator as any;\n return subject as any;\n }\n\n /** @internal */\n protected _throwIfClosed() {\n if (this.closed) {\n throw new ObjectUnsubscribedError();\n }\n }\n\n next(value: T) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n if (!this.currentObservers) {\n this.currentObservers = Array.from(this.observers);\n }\n for (const observer of this.currentObservers) {\n observer.next(value);\n }\n }\n });\n }\n\n error(err: any) {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.hasError = this.isStopped = true;\n this.thrownError = err;\n const { observers } = this;\n while (observers.length) {\n observers.shift()!.error(err);\n }\n }\n });\n }\n\n complete() {\n errorContext(() => {\n this._throwIfClosed();\n if (!this.isStopped) {\n this.isStopped = true;\n const { observers } = this;\n while (observers.length) {\n observers.shift()!.complete();\n }\n }\n });\n }\n\n unsubscribe() {\n this.isStopped = this.closed = true;\n this.observers = this.currentObservers = null!;\n }\n\n get observed() {\n return this.observers?.length > 0;\n }\n\n /** @internal */\n protected _trySubscribe(subscriber: Subscriber): TeardownLogic {\n this._throwIfClosed();\n return super._trySubscribe(subscriber);\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n this._throwIfClosed();\n this._checkFinalizedStatuses(subscriber);\n return this._innerSubscribe(subscriber);\n }\n\n /** @internal */\n protected _innerSubscribe(subscriber: Subscriber) {\n const { hasError, isStopped, observers } = this;\n if (hasError || isStopped) {\n return EMPTY_SUBSCRIPTION;\n }\n this.currentObservers = null;\n observers.push(subscriber);\n return new Subscription(() => {\n this.currentObservers = null;\n arrRemove(observers, subscriber);\n });\n }\n\n /** @internal */\n protected _checkFinalizedStatuses(subscriber: Subscriber) {\n const { hasError, thrownError, isStopped } = this;\n if (hasError) {\n subscriber.error(thrownError);\n } else if (isStopped) {\n subscriber.complete();\n }\n }\n\n /**\n * Creates a new Observable with this Subject as the source. You can do this\n * to create custom Observer-side logic of the Subject and conceal it from\n * code that uses the Observable.\n * @return {Observable} Observable that the Subject casts to\n */\n asObservable(): Observable {\n const observable: any = new Observable();\n observable.source = this;\n return observable;\n }\n}\n\n/**\n * @class AnonymousSubject\n */\nexport class AnonymousSubject extends Subject {\n constructor(\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n public destination?: Observer,\n source?: Observable\n ) {\n super();\n this.source = source;\n }\n\n next(value: T) {\n this.destination?.next?.(value);\n }\n\n error(err: any) {\n this.destination?.error?.(err);\n }\n\n complete() {\n this.destination?.complete?.();\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n return this.source?.subscribe(subscriber) ?? EMPTY_SUBSCRIPTION;\n }\n}\n", "import { Subject } from './Subject';\nimport { Subscriber } from './Subscriber';\nimport { Subscription } from './Subscription';\n\n/**\n * A variant of Subject that requires an initial value and emits its current\n * value whenever it is subscribed to.\n *\n * @class BehaviorSubject\n */\nexport class BehaviorSubject extends Subject {\n constructor(private _value: T) {\n super();\n }\n\n get value(): T {\n return this.getValue();\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n const subscription = super._subscribe(subscriber);\n !subscription.closed && subscriber.next(this._value);\n return subscription;\n }\n\n getValue(): T {\n const { hasError, thrownError, _value } = this;\n if (hasError) {\n throw thrownError;\n }\n this._throwIfClosed();\n return _value;\n }\n\n next(value: T): void {\n super.next((this._value = value));\n }\n}\n", "import { TimestampProvider } from '../types';\n\ninterface DateTimestampProvider extends TimestampProvider {\n delegate: TimestampProvider | undefined;\n}\n\nexport const dateTimestampProvider: DateTimestampProvider = {\n now() {\n // Use the variable rather than `this` so that the function can be called\n // without being bound to the provider.\n return (dateTimestampProvider.delegate || Date).now();\n },\n delegate: undefined,\n};\n", "import { Subject } from './Subject';\nimport { TimestampProvider } from './types';\nimport { Subscriber } from './Subscriber';\nimport { Subscription } from './Subscription';\nimport { dateTimestampProvider } from './scheduler/dateTimestampProvider';\n\n/**\n * A variant of {@link Subject} that \"replays\" old values to new subscribers by emitting them when they first subscribe.\n *\n * `ReplaySubject` has an internal buffer that will store a specified number of values that it has observed. Like `Subject`,\n * `ReplaySubject` \"observes\" values by having them passed to its `next` method. When it observes a value, it will store that\n * value for a time determined by the configuration of the `ReplaySubject`, as passed to its constructor.\n *\n * When a new subscriber subscribes to the `ReplaySubject` instance, it will synchronously emit all values in its buffer in\n * a First-In-First-Out (FIFO) manner. The `ReplaySubject` will also complete, if it has observed completion; and it will\n * error if it has observed an error.\n *\n * There are two main configuration items to be concerned with:\n *\n * 1. `bufferSize` - This will determine how many items are stored in the buffer, defaults to infinite.\n * 2. `windowTime` - The amount of time to hold a value in the buffer before removing it from the buffer.\n *\n * Both configurations may exist simultaneously. So if you would like to buffer a maximum of 3 values, as long as the values\n * are less than 2 seconds old, you could do so with a `new ReplaySubject(3, 2000)`.\n *\n * ### Differences with BehaviorSubject\n *\n * `BehaviorSubject` is similar to `new ReplaySubject(1)`, with a couple of exceptions:\n *\n * 1. `BehaviorSubject` comes \"primed\" with a single value upon construction.\n * 2. `ReplaySubject` will replay values, even after observing an error, where `BehaviorSubject` will not.\n *\n * @see {@link Subject}\n * @see {@link BehaviorSubject}\n * @see {@link shareReplay}\n */\nexport class ReplaySubject extends Subject {\n private _buffer: (T | number)[] = [];\n private _infiniteTimeWindow = true;\n\n /**\n * @param bufferSize The size of the buffer to replay on subscription\n * @param windowTime The amount of time the buffered items will stay buffered\n * @param timestampProvider An object with a `now()` method that provides the current timestamp. This is used to\n * calculate the amount of time something has been buffered.\n */\n constructor(\n private _bufferSize = Infinity,\n private _windowTime = Infinity,\n private _timestampProvider: TimestampProvider = dateTimestampProvider\n ) {\n super();\n this._infiniteTimeWindow = _windowTime === Infinity;\n this._bufferSize = Math.max(1, _bufferSize);\n this._windowTime = Math.max(1, _windowTime);\n }\n\n next(value: T): void {\n const { isStopped, _buffer, _infiniteTimeWindow, _timestampProvider, _windowTime } = this;\n if (!isStopped) {\n _buffer.push(value);\n !_infiniteTimeWindow && _buffer.push(_timestampProvider.now() + _windowTime);\n }\n this._trimBuffer();\n super.next(value);\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): Subscription {\n this._throwIfClosed();\n this._trimBuffer();\n\n const subscription = this._innerSubscribe(subscriber);\n\n const { _infiniteTimeWindow, _buffer } = this;\n // We use a copy here, so reentrant code does not mutate our array while we're\n // emitting it to a new subscriber.\n const copy = _buffer.slice();\n for (let i = 0; i < copy.length && !subscriber.closed; i += _infiniteTimeWindow ? 1 : 2) {\n subscriber.next(copy[i] as T);\n }\n\n this._checkFinalizedStatuses(subscriber);\n\n return subscription;\n }\n\n private _trimBuffer() {\n const { _bufferSize, _timestampProvider, _buffer, _infiniteTimeWindow } = this;\n // If we don't have an infinite buffer size, and we're over the length,\n // use splice to truncate the old buffer values off. Note that we have to\n // double the size for instances where we're not using an infinite time window\n // because we're storing the values and the timestamps in the same array.\n const adjustedBufferSize = (_infiniteTimeWindow ? 1 : 2) * _bufferSize;\n _bufferSize < Infinity && adjustedBufferSize < _buffer.length && _buffer.splice(0, _buffer.length - adjustedBufferSize);\n\n // Now, if we're not in an infinite time window, remove all values where the time is\n // older than what is allowed.\n if (!_infiniteTimeWindow) {\n const now = _timestampProvider.now();\n let last = 0;\n // Search the array for the first timestamp that isn't expired and\n // truncate the buffer up to that point.\n for (let i = 1; i < _buffer.length && (_buffer[i] as number) <= now; i += 2) {\n last = i;\n }\n last && _buffer.splice(0, last + 1);\n }\n }\n}\n", "import { Scheduler } from '../Scheduler';\nimport { Subscription } from '../Subscription';\nimport { SchedulerAction } from '../types';\n\n/**\n * A unit of work to be executed in a `scheduler`. An action is typically\n * created from within a {@link SchedulerLike} and an RxJS user does not need to concern\n * themselves about creating and manipulating an Action.\n *\n * ```ts\n * class Action extends Subscription {\n * new (scheduler: Scheduler, work: (state?: T) => void);\n * schedule(state?: T, delay: number = 0): Subscription;\n * }\n * ```\n *\n * @class Action\n */\nexport class Action extends Subscription {\n constructor(scheduler: Scheduler, work: (this: SchedulerAction, state?: T) => void) {\n super();\n }\n /**\n * Schedules this action on its parent {@link SchedulerLike} for execution. May be passed\n * some context object, `state`. May happen at some point in the future,\n * according to the `delay` parameter, if specified.\n * @param {T} [state] Some contextual data that the `work` function uses when\n * called by the Scheduler.\n * @param {number} [delay] Time to wait before executing the work, where the\n * time unit is implicit and defined by the Scheduler.\n * @return {void}\n */\n public schedule(state?: T, delay: number = 0): Subscription {\n return this;\n }\n}\n", "import type { TimerHandle } from './timerHandle';\ntype SetIntervalFunction = (handler: () => void, timeout?: number, ...args: any[]) => TimerHandle;\ntype ClearIntervalFunction = (handle: TimerHandle) => void;\n\ninterface IntervalProvider {\n setInterval: SetIntervalFunction;\n clearInterval: ClearIntervalFunction;\n delegate:\n | {\n setInterval: SetIntervalFunction;\n clearInterval: ClearIntervalFunction;\n }\n | undefined;\n}\n\nexport const intervalProvider: IntervalProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n setInterval(handler: () => void, timeout?: number, ...args) {\n const { delegate } = intervalProvider;\n if (delegate?.setInterval) {\n return delegate.setInterval(handler, timeout, ...args);\n }\n return setInterval(handler, timeout, ...args);\n },\n clearInterval(handle) {\n const { delegate } = intervalProvider;\n return (delegate?.clearInterval || clearInterval)(handle as any);\n },\n delegate: undefined,\n};\n", "import { Action } from './Action';\nimport { SchedulerAction } from '../types';\nimport { Subscription } from '../Subscription';\nimport { AsyncScheduler } from './AsyncScheduler';\nimport { intervalProvider } from './intervalProvider';\nimport { arrRemove } from '../util/arrRemove';\nimport { TimerHandle } from './timerHandle';\n\nexport class AsyncAction extends Action {\n public id: TimerHandle | undefined;\n public state?: T;\n // @ts-ignore: Property has no initializer and is not definitely assigned\n public delay: number;\n protected pending: boolean = false;\n\n constructor(protected scheduler: AsyncScheduler, protected work: (this: SchedulerAction, state?: T) => void) {\n super(scheduler, work);\n }\n\n public schedule(state?: T, delay: number = 0): Subscription {\n if (this.closed) {\n return this;\n }\n\n // Always replace the current state with the new state.\n this.state = state;\n\n const id = this.id;\n const scheduler = this.scheduler;\n\n //\n // Important implementation note:\n //\n // Actions only execute once by default, unless rescheduled from within the\n // scheduled callback. This allows us to implement single and repeat\n // actions via the same code path, without adding API surface area, as well\n // as mimic traditional recursion but across asynchronous boundaries.\n //\n // However, JS runtimes and timers distinguish between intervals achieved by\n // serial `setTimeout` calls vs. a single `setInterval` call. An interval of\n // serial `setTimeout` calls can be individually delayed, which delays\n // scheduling the next `setTimeout`, and so on. `setInterval` attempts to\n // guarantee the interval callback will be invoked more precisely to the\n // interval period, regardless of load.\n //\n // Therefore, we use `setInterval` to schedule single and repeat actions.\n // If the action reschedules itself with the same delay, the interval is not\n // canceled. If the action doesn't reschedule, or reschedules with a\n // different delay, the interval will be canceled after scheduled callback\n // execution.\n //\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, delay);\n }\n\n // Set the pending flag indicating that this action has been scheduled, or\n // has recursively rescheduled itself.\n this.pending = true;\n\n this.delay = delay;\n // If this action has already an async Id, don't request a new one.\n this.id = this.id ?? this.requestAsyncId(scheduler, this.id, delay);\n\n return this;\n }\n\n protected requestAsyncId(scheduler: AsyncScheduler, _id?: TimerHandle, delay: number = 0): TimerHandle {\n return intervalProvider.setInterval(scheduler.flush.bind(scheduler, this), delay);\n }\n\n protected recycleAsyncId(_scheduler: AsyncScheduler, id?: TimerHandle, delay: number | null = 0): TimerHandle | undefined {\n // If this action is rescheduled with the same delay time, don't clear the interval id.\n if (delay != null && this.delay === delay && this.pending === false) {\n return id;\n }\n // Otherwise, if the action's delay time is different from the current delay,\n // or the action has been rescheduled before it's executed, clear the interval id\n if (id != null) {\n intervalProvider.clearInterval(id);\n }\n\n return undefined;\n }\n\n /**\n * Immediately executes this action and the `work` it contains.\n * @return {any}\n */\n public execute(state: T, delay: number): any {\n if (this.closed) {\n return new Error('executing a cancelled action');\n }\n\n this.pending = false;\n const error = this._execute(state, delay);\n if (error) {\n return error;\n } else if (this.pending === false && this.id != null) {\n // Dequeue if the action didn't reschedule itself. Don't call\n // unsubscribe(), because the action could reschedule later.\n // For example:\n // ```\n // scheduler.schedule(function doWork(counter) {\n // /* ... I'm a busy worker bee ... */\n // var originalAction = this;\n // /* wait 100ms before rescheduling the action */\n // setTimeout(function () {\n // originalAction.schedule(counter + 1);\n // }, 100);\n // }, 1000);\n // ```\n this.id = this.recycleAsyncId(this.scheduler, this.id, null);\n }\n }\n\n protected _execute(state: T, _delay: number): any {\n let errored: boolean = false;\n let errorValue: any;\n try {\n this.work(state);\n } catch (e) {\n errored = true;\n // HACK: Since code elsewhere is relying on the \"truthiness\" of the\n // return here, we can't have it return \"\" or 0 or false.\n // TODO: Clean this up when we refactor schedulers mid-version-8 or so.\n errorValue = e ? e : new Error('Scheduled action threw falsy error');\n }\n if (errored) {\n this.unsubscribe();\n return errorValue;\n }\n }\n\n unsubscribe() {\n if (!this.closed) {\n const { id, scheduler } = this;\n const { actions } = scheduler;\n\n this.work = this.state = this.scheduler = null!;\n this.pending = false;\n\n arrRemove(actions, this);\n if (id != null) {\n this.id = this.recycleAsyncId(scheduler, id, null);\n }\n\n this.delay = null!;\n super.unsubscribe();\n }\n }\n}\n", "import { Action } from './scheduler/Action';\nimport { Subscription } from './Subscription';\nimport { SchedulerLike, SchedulerAction } from './types';\nimport { dateTimestampProvider } from './scheduler/dateTimestampProvider';\n\n/**\n * An execution context and a data structure to order tasks and schedule their\n * execution. Provides a notion of (potentially virtual) time, through the\n * `now()` getter method.\n *\n * Each unit of work in a Scheduler is called an `Action`.\n *\n * ```ts\n * class Scheduler {\n * now(): number;\n * schedule(work, delay?, state?): Subscription;\n * }\n * ```\n *\n * @class Scheduler\n * @deprecated Scheduler is an internal implementation detail of RxJS, and\n * should not be used directly. Rather, create your own class and implement\n * {@link SchedulerLike}. Will be made internal in v8.\n */\nexport class Scheduler implements SchedulerLike {\n public static now: () => number = dateTimestampProvider.now;\n\n constructor(private schedulerActionCtor: typeof Action, now: () => number = Scheduler.now) {\n this.now = now;\n }\n\n /**\n * A getter method that returns a number representing the current time\n * (at the time this function was called) according to the scheduler's own\n * internal clock.\n * @return {number} A number that represents the current time. May or may not\n * have a relation to wall-clock time. May or may not refer to a time unit\n * (e.g. milliseconds).\n */\n public now: () => number;\n\n /**\n * Schedules a function, `work`, for execution. May happen at some point in\n * the future, according to the `delay` parameter, if specified. May be passed\n * some context object, `state`, which will be passed to the `work` function.\n *\n * The given arguments will be processed an stored as an Action object in a\n * queue of actions.\n *\n * @param {function(state: ?T): ?Subscription} work A function representing a\n * task, or some unit of work to be executed by the Scheduler.\n * @param {number} [delay] Time to wait before executing the work, where the\n * time unit is implicit and defined by the Scheduler itself.\n * @param {T} [state] Some contextual data that the `work` function uses when\n * called by the Scheduler.\n * @return {Subscription} A subscription in order to be able to unsubscribe\n * the scheduled work.\n */\n public schedule(work: (this: SchedulerAction, state?: T) => void, delay: number = 0, state?: T): Subscription {\n return new this.schedulerActionCtor(this, work).schedule(state, delay);\n }\n}\n", "import { Scheduler } from '../Scheduler';\nimport { Action } from './Action';\nimport { AsyncAction } from './AsyncAction';\nimport { TimerHandle } from './timerHandle';\n\nexport class AsyncScheduler extends Scheduler {\n public actions: Array> = [];\n /**\n * A flag to indicate whether the Scheduler is currently executing a batch of\n * queued actions.\n * @type {boolean}\n * @internal\n */\n public _active: boolean = false;\n /**\n * An internal ID used to track the latest asynchronous task such as those\n * coming from `setTimeout`, `setInterval`, `requestAnimationFrame`, and\n * others.\n * @type {any}\n * @internal\n */\n public _scheduled: TimerHandle | undefined;\n\n constructor(SchedulerAction: typeof Action, now: () => number = Scheduler.now) {\n super(SchedulerAction, now);\n }\n\n public flush(action: AsyncAction): void {\n const { actions } = this;\n\n if (this._active) {\n actions.push(action);\n return;\n }\n\n let error: any;\n this._active = true;\n\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions.shift()!)); // exhaust the scheduler queue\n\n this._active = false;\n\n if (error) {\n while ((action = actions.shift()!)) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n", "import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\n\n/**\n *\n * Async Scheduler\n *\n * Schedule task as if you used setTimeout(task, duration)\n *\n * `async` scheduler schedules tasks asynchronously, by putting them on the JavaScript\n * event loop queue. It is best used to delay tasks in time or to schedule tasks repeating\n * in intervals.\n *\n * If you just want to \"defer\" task, that is to perform it right after currently\n * executing synchronous code ends (commonly achieved by `setTimeout(deferredTask, 0)`),\n * better choice will be the {@link asapScheduler} scheduler.\n *\n * ## Examples\n * Use async scheduler to delay task\n * ```ts\n * import { asyncScheduler } from 'rxjs';\n *\n * const task = () => console.log('it works!');\n *\n * asyncScheduler.schedule(task, 2000);\n *\n * // After 2 seconds logs:\n * // \"it works!\"\n * ```\n *\n * Use async scheduler to repeat task in intervals\n * ```ts\n * import { asyncScheduler } from 'rxjs';\n *\n * function task(state) {\n * console.log(state);\n * this.schedule(state + 1, 1000); // `this` references currently executing Action,\n * // which we reschedule with new state and delay\n * }\n *\n * asyncScheduler.schedule(task, 3000, 0);\n *\n * // Logs:\n * // 0 after 3s\n * // 1 after 4s\n * // 2 after 5s\n * // 3 after 6s\n * ```\n */\n\nexport const asyncScheduler = new AsyncScheduler(AsyncAction);\n\n/**\n * @deprecated Renamed to {@link asyncScheduler}. Will be removed in v8.\n */\nexport const async = asyncScheduler;\n", "import { AsyncAction } from './AsyncAction';\nimport { Subscription } from '../Subscription';\nimport { QueueScheduler } from './QueueScheduler';\nimport { SchedulerAction } from '../types';\nimport { TimerHandle } from './timerHandle';\n\nexport class QueueAction extends AsyncAction {\n constructor(protected scheduler: QueueScheduler, protected work: (this: SchedulerAction, state?: T) => void) {\n super(scheduler, work);\n }\n\n public schedule(state?: T, delay: number = 0): Subscription {\n if (delay > 0) {\n return super.schedule(state, delay);\n }\n this.delay = delay;\n this.state = state;\n this.scheduler.flush(this);\n return this;\n }\n\n public execute(state: T, delay: number): any {\n return delay > 0 || this.closed ? super.execute(state, delay) : this._execute(state, delay);\n }\n\n protected requestAsyncId(scheduler: QueueScheduler, id?: TimerHandle, delay: number = 0): TimerHandle {\n // If delay exists and is greater than 0, or if the delay is null (the\n // action wasn't rescheduled) but was originally scheduled as an async\n // action, then recycle as an async action.\n\n if ((delay != null && delay > 0) || (delay == null && this.delay > 0)) {\n return super.requestAsyncId(scheduler, id, delay);\n }\n\n // Otherwise flush the scheduler starting with this action.\n scheduler.flush(this);\n\n // HACK: In the past, this was returning `void`. However, `void` isn't a valid\n // `TimerHandle`, and generally the return value here isn't really used. So the\n // compromise is to return `0` which is both \"falsy\" and a valid `TimerHandle`,\n // as opposed to refactoring every other instanceo of `requestAsyncId`.\n return 0;\n }\n}\n", "import { AsyncScheduler } from './AsyncScheduler';\n\nexport class QueueScheduler extends AsyncScheduler {\n}\n", "import { QueueAction } from './QueueAction';\nimport { QueueScheduler } from './QueueScheduler';\n\n/**\n *\n * Queue Scheduler\n *\n * Put every next task on a queue, instead of executing it immediately\n *\n * `queue` scheduler, when used with delay, behaves the same as {@link asyncScheduler} scheduler.\n *\n * When used without delay, it schedules given task synchronously - executes it right when\n * it is scheduled. However when called recursively, that is when inside the scheduled task,\n * another task is scheduled with queue scheduler, instead of executing immediately as well,\n * that task will be put on a queue and wait for current one to finish.\n *\n * This means that when you execute task with `queue` scheduler, you are sure it will end\n * before any other task scheduled with that scheduler will start.\n *\n * ## Examples\n * Schedule recursively first, then do something\n * ```ts\n * import { queueScheduler } from 'rxjs';\n *\n * queueScheduler.schedule(() => {\n * queueScheduler.schedule(() => console.log('second')); // will not happen now, but will be put on a queue\n *\n * console.log('first');\n * });\n *\n * // Logs:\n * // \"first\"\n * // \"second\"\n * ```\n *\n * Reschedule itself recursively\n * ```ts\n * import { queueScheduler } from 'rxjs';\n *\n * queueScheduler.schedule(function(state) {\n * if (state !== 0) {\n * console.log('before', state);\n * this.schedule(state - 1); // `this` references currently executing Action,\n * // which we reschedule with new state\n * console.log('after', state);\n * }\n * }, 0, 3);\n *\n * // In scheduler that runs recursively, you would expect:\n * // \"before\", 3\n * // \"before\", 2\n * // \"before\", 1\n * // \"after\", 1\n * // \"after\", 2\n * // \"after\", 3\n *\n * // But with queue it logs:\n * // \"before\", 3\n * // \"after\", 3\n * // \"before\", 2\n * // \"after\", 2\n * // \"before\", 1\n * // \"after\", 1\n * ```\n */\n\nexport const queueScheduler = new QueueScheduler(QueueAction);\n\n/**\n * @deprecated Renamed to {@link queueScheduler}. Will be removed in v8.\n */\nexport const queue = queueScheduler;\n", "import { AsyncAction } from './AsyncAction';\nimport { AnimationFrameScheduler } from './AnimationFrameScheduler';\nimport { SchedulerAction } from '../types';\nimport { animationFrameProvider } from './animationFrameProvider';\nimport { TimerHandle } from './timerHandle';\n\nexport class AnimationFrameAction extends AsyncAction {\n constructor(protected scheduler: AnimationFrameScheduler, protected work: (this: SchedulerAction, state?: T) => void) {\n super(scheduler, work);\n }\n\n protected requestAsyncId(scheduler: AnimationFrameScheduler, id?: TimerHandle, delay: number = 0): TimerHandle {\n // If delay is greater than 0, request as an async action.\n if (delay !== null && delay > 0) {\n return super.requestAsyncId(scheduler, id, delay);\n }\n // Push the action to the end of the scheduler queue.\n scheduler.actions.push(this);\n // If an animation frame has already been requested, don't request another\n // one. If an animation frame hasn't been requested yet, request one. Return\n // the current animation frame request id.\n return scheduler._scheduled || (scheduler._scheduled = animationFrameProvider.requestAnimationFrame(() => scheduler.flush(undefined)));\n }\n\n protected recycleAsyncId(scheduler: AnimationFrameScheduler, id?: TimerHandle, delay: number = 0): TimerHandle | undefined {\n // If delay exists and is greater than 0, or if the delay is null (the\n // action wasn't rescheduled) but was originally scheduled as an async\n // action, then recycle as an async action.\n if (delay != null ? delay > 0 : this.delay > 0) {\n return super.recycleAsyncId(scheduler, id, delay);\n }\n // If the scheduler queue has no remaining actions with the same async id,\n // cancel the requested animation frame and set the scheduled flag to\n // undefined so the next AnimationFrameAction will request its own.\n const { actions } = scheduler;\n if (id != null && actions[actions.length - 1]?.id !== id) {\n animationFrameProvider.cancelAnimationFrame(id as number);\n scheduler._scheduled = undefined;\n }\n // Return undefined so the action knows to request a new async id if it's rescheduled.\n return undefined;\n }\n}\n", "import { AsyncAction } from './AsyncAction';\nimport { AsyncScheduler } from './AsyncScheduler';\n\nexport class AnimationFrameScheduler extends AsyncScheduler {\n public flush(action?: AsyncAction): void {\n this._active = true;\n // The async id that effects a call to flush is stored in _scheduled.\n // Before executing an action, it's necessary to check the action's async\n // id to determine whether it's supposed to be executed in the current\n // flush.\n // Previous implementations of this method used a count to determine this,\n // but that was unsound, as actions that are unsubscribed - i.e. cancelled -\n // are removed from the actions array and that can shift actions that are\n // scheduled to be executed in a subsequent flush into positions at which\n // they are executed within the current flush.\n const flushId = this._scheduled;\n this._scheduled = undefined;\n\n const { actions } = this;\n let error: any;\n action = action || actions.shift()!;\n\n do {\n if ((error = action.execute(action.state, action.delay))) {\n break;\n }\n } while ((action = actions[0]) && action.id === flushId && actions.shift());\n\n this._active = false;\n\n if (error) {\n while ((action = actions[0]) && action.id === flushId && actions.shift()) {\n action.unsubscribe();\n }\n throw error;\n }\n }\n}\n", "import { AnimationFrameAction } from './AnimationFrameAction';\nimport { AnimationFrameScheduler } from './AnimationFrameScheduler';\n\n/**\n *\n * Animation Frame Scheduler\n *\n * Perform task when `window.requestAnimationFrame` would fire\n *\n * When `animationFrame` scheduler is used with delay, it will fall back to {@link asyncScheduler} scheduler\n * behaviour.\n *\n * Without delay, `animationFrame` scheduler can be used to create smooth browser animations.\n * It makes sure scheduled task will happen just before next browser content repaint,\n * thus performing animations as efficiently as possible.\n *\n * ## Example\n * Schedule div height animation\n * ```ts\n * // html:

\n * import { animationFrameScheduler } from 'rxjs';\n *\n * const div = document.querySelector('div');\n *\n * animationFrameScheduler.schedule(function(height) {\n * div.style.height = height + \"px\";\n *\n * this.schedule(height + 1); // `this` references currently executing Action,\n * // which we reschedule with new state\n * }, 0, 0);\n *\n * // You will see a div element growing in height\n * ```\n */\n\nexport const animationFrameScheduler = new AnimationFrameScheduler(AnimationFrameAction);\n\n/**\n * @deprecated Renamed to {@link animationFrameScheduler}. Will be removed in v8.\n */\nexport const animationFrame = animationFrameScheduler;\n", "import { Observable } from '../Observable';\nimport { SchedulerLike } from '../types';\n\n/**\n * A simple Observable that emits no items to the Observer and immediately\n * emits a complete notification.\n *\n * Just emits 'complete', and nothing else.\n *\n * ![](empty.png)\n *\n * A simple Observable that only emits the complete notification. It can be used\n * for composing with other Observables, such as in a {@link mergeMap}.\n *\n * ## Examples\n *\n * Log complete notification\n *\n * ```ts\n * import { EMPTY } from 'rxjs';\n *\n * EMPTY.subscribe({\n * next: () => console.log('Next'),\n * complete: () => console.log('Complete!')\n * });\n *\n * // Outputs\n * // Complete!\n * ```\n *\n * Emit the number 7, then complete\n *\n * ```ts\n * import { EMPTY, startWith } from 'rxjs';\n *\n * const result = EMPTY.pipe(startWith(7));\n * result.subscribe(x => console.log(x));\n *\n * // Outputs\n * // 7\n * ```\n *\n * Map and flatten only odd numbers to the sequence `'a'`, `'b'`, `'c'`\n *\n * ```ts\n * import { interval, mergeMap, of, EMPTY } from 'rxjs';\n *\n * const interval$ = interval(1000);\n * const result = interval$.pipe(\n * mergeMap(x => x % 2 === 1 ? of('a', 'b', 'c') : EMPTY),\n * );\n * result.subscribe(x => console.log(x));\n *\n * // Results in the following to the console:\n * // x is equal to the count on the interval, e.g. (0, 1, 2, 3, ...)\n * // x will occur every 1000ms\n * // if x % 2 is equal to 1, print a, b, c (each on its own)\n * // if x % 2 is not equal to 1, nothing will be output\n * ```\n *\n * @see {@link Observable}\n * @see {@link NEVER}\n * @see {@link of}\n * @see {@link throwError}\n */\nexport const EMPTY = new Observable((subscriber) => subscriber.complete());\n\n/**\n * @param scheduler A {@link SchedulerLike} to use for scheduling\n * the emission of the complete notification.\n * @deprecated Replaced with the {@link EMPTY} constant or {@link scheduled} (e.g. `scheduled([], scheduler)`). Will be removed in v8.\n */\nexport function empty(scheduler?: SchedulerLike) {\n return scheduler ? emptyScheduled(scheduler) : EMPTY;\n}\n\nfunction emptyScheduled(scheduler: SchedulerLike) {\n return new Observable((subscriber) => scheduler.schedule(() => subscriber.complete()));\n}\n", "import { SchedulerLike } from '../types';\nimport { isFunction } from './isFunction';\n\nexport function isScheduler(value: any): value is SchedulerLike {\n return value && isFunction(value.schedule);\n}\n", "import { SchedulerLike } from '../types';\nimport { isFunction } from './isFunction';\nimport { isScheduler } from './isScheduler';\n\nfunction last(arr: T[]): T | undefined {\n return arr[arr.length - 1];\n}\n\nexport function popResultSelector(args: any[]): ((...args: unknown[]) => unknown) | undefined {\n return isFunction(last(args)) ? args.pop() : undefined;\n}\n\nexport function popScheduler(args: any[]): SchedulerLike | undefined {\n return isScheduler(last(args)) ? args.pop() : undefined;\n}\n\nexport function popNumber(args: any[], defaultValue: number): number {\n return typeof last(args) === 'number' ? args.pop()! : defaultValue;\n}\n", "export const isArrayLike = ((x: any): x is ArrayLike => x && typeof x.length === 'number' && typeof x !== 'function');", "import { isFunction } from \"./isFunction\";\n\n/**\n * Tests to see if the object is \"thennable\".\n * @param value the object to test\n */\nexport function isPromise(value: any): value is PromiseLike {\n return isFunction(value?.then);\n}\n", "import { InteropObservable } from '../types';\nimport { observable as Symbol_observable } from '../symbol/observable';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being Observable (but not necessary an Rx Observable) */\nexport function isInteropObservable(input: any): input is InteropObservable {\n return isFunction(input[Symbol_observable]);\n}\n", "import { isFunction } from './isFunction';\n\nexport function isAsyncIterable(obj: any): obj is AsyncIterable {\n return Symbol.asyncIterator && isFunction(obj?.[Symbol.asyncIterator]);\n}\n", "/**\n * Creates the TypeError to throw if an invalid object is passed to `from` or `scheduled`.\n * @param input The object that was passed.\n */\nexport function createInvalidObservableTypeError(input: any) {\n // TODO: We should create error codes that can be looked up, so this can be less verbose.\n return new TypeError(\n `You provided ${\n input !== null && typeof input === 'object' ? 'an invalid object' : `'${input}'`\n } where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`\n );\n}\n", "export function getSymbolIterator(): symbol {\n if (typeof Symbol !== 'function' || !Symbol.iterator) {\n return '@@iterator' as any;\n }\n\n return Symbol.iterator;\n}\n\nexport const iterator = getSymbolIterator();\n", "import { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being an Iterable */\nexport function isIterable(input: any): input is Iterable {\n return isFunction(input?.[Symbol_iterator]);\n}\n", "import { ReadableStreamLike } from '../types';\nimport { isFunction } from './isFunction';\n\nexport async function* readableStreamLikeToAsyncGenerator(readableStream: ReadableStreamLike): AsyncGenerator {\n const reader = readableStream.getReader();\n try {\n while (true) {\n const { value, done } = await reader.read();\n if (done) {\n return;\n }\n yield value!;\n }\n } finally {\n reader.releaseLock();\n }\n}\n\nexport function isReadableStreamLike(obj: any): obj is ReadableStreamLike {\n // We don't want to use instanceof checks because they would return\n // false for instances from another Realm, like an

The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

  • Default: Uses the default DNS settings configured by your ISP or network.
  • DHCP: Automatically acquires DNS settings from the DHCP server.
  • Google: A reliable and fast DNS service provided by Google.
  • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
  • Cloudflare_Malware: Provides additional protection by blocking malware sites.
  • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
  • Level3: Another fast and reliable DNS service option.
  • Open_DNS: Offers customizable filtering and enhanced security features.
  • Quad9: Focuses on security by blocking known malicious domains.

Customize Preferences

The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user’s specific needs and preferences.

Performance Plans

The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

Add and activate the Ultimate Performance Profile:

  • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.

Remove Ultimate Performance Profile:

  • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.

Shortcuts

The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

Config


Features

  • Install the most used Windows Features by checking the checkbox and clicking "Install Features" to install them.

  • All .Net Frameworks (2, 3, 4)

  • HyperV Virtualization
  • Legacy Media (WMP, DirectPlay)
  • NFS - Network File System
  • Enable Search Box Web Suggestions in Registry (explorer restart)
  • Disables Search Box Web Suggestions in Registry (explorer restart)
  • Enable Daily Registry Backup Task 12:30am
  • Enable Legacy F8 Boot Recovery
  • Disable Legacy F8 Boot Recovery
  • Windows Subsystem for Linux
  • Windows Sandbox

Fixes

  • Quick fixes for your system if you are having issues.

  • Set Up Autologin

  • Reset Windows Update
  • Reset Network
  • System Corruption Scan
  • WinGet Reinstall
  • Remove Adobe Creative Cloud

Legacy Windows Panels

Open old-school Windows panels directly from WinUtil. Following Panels are available:

  • Control Panel
  • Network Connections
  • Power Panel
  • Region
  • Sound Settings
  • System Properties
  • User Accounts

Updates


The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

Default (Out of Box) Settings

  • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
  • Functionality: It will remove any custom Windows update settings previously applied.
  • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
  • Description: This is the recommended setting for all computers.
  • Update Schedule:
    • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
    • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
  • Rationale:
    • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
    • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
  • Description: This setting completely disables all Windows updates.
  • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
  • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
  • Note: It is strongly advised against using this setting due to the heightened security risks.

Bug

The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

MicroWin


  • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.

Microwin Microwin

Basic usage

  1. Specify the source Windows ISO to customize.

    • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
  2. Configure the debloat process.

  3. Specify the target location for the new ISO file.
  4. Let the magic happen!

Heads-up

This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

Options

  • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

Info

OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

  • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
  • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

Customization options
  • Keep Provisioned Packages: leaving this option unticked (default) will try to remove every operating system package.

Some packages may remain after processing. This can happen if the packages in question are permanent or have been superseded by newer versions.

  • Keep Appx Packages: leaving this option unticked (default) will try to remove every Microsoft Store app from the Windows image.

This option will exclude some applications that are essential in the event that you want or need to add a Store app later on.

  • Keep Defender: leaving this option unticked will try to remove every part of Windows Defender, including the Windows Security app.

Leaving this option unticked is NOT recommended unless you plan to use a third-party antivirus solution on your MicroWin installation. In that regard, don't install AVs with bad reputations or rogueware.

  • Keep Edge: leaving this option unticked will try to remove every part of the Microsoft Edge browser using the best methods available.

Leaving this option unticked is not recommended because it might break some applications that might depend on the Edge WebView2 runtime. However, if that happens, you can easily reinstall it

Driver integration options
  • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
  • Import drivers from the current system will add every third-party driver that is present in your active installation.

This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

Ventoy options
  • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

Info

Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

Automation

  • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

  • On the Install Tab, click "Get Installed", this will get all installed apps supported by Winutil on the system. GetInstalled GetInstalled

  • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file. SettingsExport SettingsExport

  • Copy this file to a USB or somewhere you can use it after Windows installation.

Tip

Use the Microwin tab to create a custom Windows image & install the Windows image.

  • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
    iex "& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run"
    +
  • Have a cup of coffee! Come back when it's done.
\ No newline at end of file From 50afe1afc5887d2b9a6665d87e3b787020f0b757 Mon Sep 17 00:00:00 2001 From: <> Date: Fri, 9 Aug 2024 14:58:32 +0000 Subject: [PATCH 02/10] Deployed 723e1a1 with MkDocs version: 1.6.0 --- KnownIssues/index.html | 2 +- contribute/index.html | 8 +++++--- .../Features/DisableLegacyRecovery/index.html | 2 +- .../DisableSearchSuggestions/index.html | 2 +- .../Features/EnableLegacyRecovery/index.html | 2 +- .../Features/EnableSearchSuggestions/index.html | 2 +- dev/features/Features/Install/index.html | 2 +- dev/features/Features/RegBackup/index.html | 2 +- dev/features/Features/Sandbox/index.html | 2 +- dev/features/Features/dotnet/index.html | 2 +- dev/features/Features/hyperv/index.html | 2 +- dev/features/Features/legacymedia/index.html | 2 +- dev/features/Features/nfs/index.html | 2 +- dev/features/Features/wsl/index.html | 2 +- dev/features/Fixes/Autologin/index.html | 2 +- dev/features/Fixes/DISM/index.html | 2 +- dev/features/Fixes/Network/index.html | 2 +- .../Fixes/RunAdobeCCCleanerTool/index.html | 2 +- dev/features/Fixes/Update/index.html | 2 +- dev/features/Fixes/Winget/index.html | 2 +- .../Legacy-Windows-Panels/control/index.html | 2 +- .../Legacy-Windows-Panels/network/index.html | 2 +- .../Legacy-Windows-Panels/power/index.html | 2 +- .../Legacy-Windows-Panels/region/index.html | 2 +- .../Legacy-Windows-Panels/sound/index.html | 2 +- .../Legacy-Windows-Panels/system/index.html | 2 +- .../Legacy-Windows-Panels/user/index.html | 2 +- .../Customize-Preferences/BingSearch/index.html | 2 +- .../Customize-Preferences/DarkMode/index.html | 2 +- .../DetailedBSoD/index.html | 2 +- .../HiddenFiles/index.html | 2 +- .../MouseAcceleration/index.html | 2 +- .../Customize-Preferences/NumLock/index.html | 2 +- .../Customize-Preferences/ShowExt/index.html | 2 +- .../Customize-Preferences/SnapFlyout/index.html | 2 +- .../SnapSuggestion/index.html | 2 +- .../Customize-Preferences/SnapWindow/index.html | 2 +- .../Customize-Preferences/StickyKeys/index.html | 2 +- .../Customize-Preferences/TaskView/index.html | 2 +- .../TaskbarAlignment/index.html | 2 +- .../TaskbarSearch/index.html | 2 +- .../TaskbarWidgets/index.html | 2 +- .../VerboseLogon/index.html | 2 +- dev/tweaks/Essential-Tweaks/AH/index.html | 2 +- .../ConsumerFeatures/index.html | 2 +- dev/tweaks/Essential-Tweaks/DVR/index.html | 2 +- .../Essential-Tweaks/DeleteTempFiles/index.html | 2 +- .../Essential-Tweaks/DiskCleanup/index.html | 2 +- .../Essential-Tweaks/EdgeDebloat/index.html | 2 +- .../EndTaskOnTaskbar/index.html | 2 +- dev/tweaks/Essential-Tweaks/Hiber/index.html | 2 +- dev/tweaks/Essential-Tweaks/Home/index.html | 2 +- .../LaptopHibernation/index.html | 2 +- dev/tweaks/Essential-Tweaks/Loc/index.html | 2 +- .../Essential-Tweaks/Powershell7/index.html | 2 +- .../Essential-Tweaks/Powershell7Tele/index.html | 2 +- .../Essential-Tweaks/RestorePoint/index.html | 2 +- dev/tweaks/Essential-Tweaks/Services/index.html | 2 +- dev/tweaks/Essential-Tweaks/Storage/index.html | 2 +- dev/tweaks/Essential-Tweaks/Tele/index.html | 2 +- dev/tweaks/Essential-Tweaks/Teredo/index.html | 2 +- dev/tweaks/Essential-Tweaks/Wifi/index.html | 2 +- .../Performance-Plans/AddUltPerf/index.html | 2 +- .../Performance-Plans/RemoveUltPerf/index.html | 2 +- dev/tweaks/Shortcuts/Shortcut/index.html | 2 +- .../BlockAdobeNet/index.html | 2 +- .../DeBloat/index.html | 2 +- .../DebloatAdobe/index.html | 2 +- .../DisableBGapps/index.html | 2 +- .../DisableFSO/index.html | 2 +- .../DisableLMS1/index.html | 2 +- .../DisableNotifications/index.html | 2 +- .../Disableipsix/index.html | 2 +- .../Display/index.html | 2 +- .../OOSUbutton/index.html | 2 +- .../RemoveCopilot/index.html | 2 +- .../RemoveEdge/index.html | 2 +- .../RemoveHomeGallery/index.html | 2 +- .../RemoveOnedrive/index.html | 2 +- .../RightClickMenu/index.html | 2 +- .../z--Advanced-Tweaks---CAUTION/UTC/index.html | 2 +- .../Undoall/index.html | 2 +- .../button/index.html | 2 +- .../changedns/index.html | 2 +- devdocs/index.html | 2 +- faq/index.html | 2 +- index.html | 2 +- search/search_index.json | 2 +- sitemap.xml.gz | Bin 127 -> 127 bytes userguide/index.html | 2 +- 90 files changed, 93 insertions(+), 91 deletions(-) diff --git a/KnownIssues/index.html b/KnownIssues/index.html index 5dcc9f5d5..fa88db852 100644 --- a/KnownIssues/index.html +++ b/KnownIssues/index.html @@ -7,4 +7,4 @@

  • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

  • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

  • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

  • Battery drains too fast.

    • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

    • Check Battery Health:

    • Open a Command Prompt as an administrator.
    • Run the following command to generate a battery report:
      powercfg /batteryreport /output "C:\battery_report.html"
       
    • Open the generated HTML report to review information about battery health and usage.

    • Review Power Settings:

    • Go to "Settings" > "System" > "Power & sleep."
    • Adjust power plan settings based on your preferences and usage patterns.
    • Click on "Additional power settings" to access advanced power settings.

    • Identify Power-Hungry Apps:

    • Right-click on the taskbar and select "Task Manager."
    • Navigate to the "Processes" tab to identify applications with high CPU or memory usage.
    • Consider closing unnecessary background applications.

    • Update Drivers:

    • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
    • Ensure graphics, chipset, and other essential drivers are up to date.

    • Check for Windows Updates:

    • Go to "Settings" > "Update & Security" > "Windows Update."
    • Check for and install any available updates for your operating system.

    • Reduce Screen Brightness:

    • Adjust screen brightness based on your preferences and lighting conditions.
    • Go to "Settings" > "System" > "Display" to adjust brightness.

    • Battery Saver Mode:

    • Go to "Settings" > "System" > "Battery."
    • Turn on "Battery saver" to limit background activity and conserve power.

    • Check Power Usage in Settings:

    • Go to "Settings" > "System" > "Battery" > "Battery usage by app."
    • Review the list of apps and their power usage.

    • Check Background Apps:

    • Go to "Settings" > "Privacy" > "Background apps."
    • Disable unnecessary apps running in the background.

    • Use Powercfg for Analysis:

      • Open a Command Prompt as an administrator.
      • Run the following command to analyze energy usage and generate a report:
        powercfg /energy /output "C:\energy_report.html"
         
      • Open the generated HTML report to identify energy consumption patterns.
    • Review Event Viewer:

      • Open Event Viewer by searching for it in the Start menu.
      • Navigate to "Windows Logs" > "System."
      • Look for events with the source "Power-Troubleshooter" to identify power-related events.
    • Check Wake-up Sources:

      • Open a Command Prompt as an administrator.
      • Use the command powercfg /requests to identify processes preventing sleep.
      • Check Task Scheduler for tasks waking up the computer.
      • Use the command powercfg /waketimers to view active wake timers.
    • Resource Monitor:

      • Open Resource Monitor from the Start menu.
      • Navigate to the "CPU" tab and identify processes with high CPU usage.
    • Windows Settings - Activity History:

      • In "Settings," go to "Privacy" > "Activity history."
      • Turn off "Let Windows collect my activities from this PC."
    • Network Adapters:

      • Open Device Manager by searching for it in the Start menu.
      • Locate your network adapter, right-click, and go to "Properties."
      • Under the "Power Management" tab, uncheck the option that allows the device to wake the computer.
    • Review Installed Applications:

      • Manually review installed applications by searching for "Add or remove programs" in the Start menu.
      • Check settings/preferences of individual applications for power-related options.
      • Uninstall unnecessary or problematic software.
    • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

    Troubleshoot errors during Microwin usage

    Error 0x80041031

    • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

    • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

    • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

      sfc /scannow
      -

    • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

    • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

    • Press Win + R to open the Run dialog.
    • Type services.msc and press Enter.
    • Locate "Windows Management Instrumentation" in the list.
    • Make sure to set its status to "Running" and the startup type to "Automatic."

    • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

    • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

    • Press Win + X and select "Event Viewer."

    • Navigate to "Windows Logs" -> "Application" or "System."
    • Look for entries with the source related to WMI or the application use to mount the ISO.

    • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

    • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

    \ No newline at end of file +

  • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

  • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

  • Press Win + R to open the Run dialog.
  • Type services.msc and press Enter.
  • Locate "Windows Management Instrumentation" in the list.
  • Make sure to set its status to "Running" and the startup type to "Automatic."

  • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

  • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

  • Press Win + X and select "Event Viewer."

  • Navigate to "Windows Logs" -> "Application" or "System."
  • Look for entries with the source related to WMI or the application use to mount the ISO.

  • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

  • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

  • \ No newline at end of file diff --git a/contribute/index.html b/contribute/index.html index a2d9f8c0d..8354fb1a6 100644 --- a/contribute/index.html +++ b/contribute/index.html @@ -1,13 +1,15 @@ Contributing Guide - WinUtil Documentation

    How to Contribute?

    Testing

    • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!

    Run the latest pre-release

    irm christitus.com/windev | iex
    -

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    Issues

    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the "Issues" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.

    Contribute Code

    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include "WPF" or "WinUtil" in the file name so it can be loaded into the runspace.

    Walk through

    Overview

    graph LR
    +

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    Issues

    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the "Issues" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.

    Contribute Code

    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include "WPF" or "WinUtil" in the file name so it can be loaded into the runspace.

    Walk through

    Overview

    %%{init: {"flowchart": {"curve": "cardinal"}} }%%
    +graph TD
       A[Fork Project] --> B[Clone Repository];
       B --> C[Create New Branch];
       C --> D[Make Changes];
       D --> G[Test Changes];
       G --> H{Tests Passed?};
       H -->|Yes| E[Commit Changes];
    -  E --> F[Push Branch];
       H -->|No| J[Fix Issues];
    +  J --> G;
    +  E --> F[Push Branch];
       F --> K[Create Pull Request];
       K --> L[Fill out PR template];
    -  J --> G;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    Fork the Repo

    • Fork the WinUtil Repository here to create a copy that will be available in your repository list. Fork Image FOrk Image

    Clone the Fork

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under "Your Repositories" and press "clone {repo name}"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    Testing your changes

    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\Compile.ps1 -run
    • Compile
    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.

    Committing the changes

    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:
    • Push Commit Image
    • Now, commit your changes once you are happy with the result. Commit Image
    • Push the changes to upload them to your fork on github.com. Push Commit Image

    Making a PR

    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the "/windev" build.
    • If you do not see your feature in the main "/win" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    \ No newline at end of file + classDef default stroke:#333,stroke-width:4px,font-size:12pt;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    Fork the Repo

    • Fork the WinUtil Repository here to create a copy that will be available in your repository list.

    Fork Image

    Fork Image

    Clone the Fork

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under "Your Repositories" and press "clone {repo name}"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    Testing your changes

    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\Compile.ps1 -run

    Compile

    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.

    Committing the changes

    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:

    Push Commit Image

    • Now, commit your changes once you are happy with the result.

    Commit Image

    • Push the changes to upload them to your fork on github.com.

    Push Commit Image

    Making a PR

    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the "/windev" build.
    • If you do not see your feature in the main "/win" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    \ No newline at end of file diff --git a/dev/features/Features/DisableLegacyRecovery/index.html b/dev/features/Features/DisableLegacyRecovery/index.html index f20dd4610..d98fcf10f 100644 --- a/dev/features/Features/DisableLegacyRecovery/index.html +++ b/dev/features/Features/DisableLegacyRecovery/index.html @@ -21,4 +21,4 @@ } New-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Configuration Manager\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Features/DisableSearchSuggestions/index.html b/dev/features/Features/DisableSearchSuggestions/index.html index 512b112c2..2a2611ed9 100644 --- a/dev/features/Features/DisableSearchSuggestions/index.html +++ b/dev/features/Features/DisableSearchSuggestions/index.html @@ -21,4 +21,4 @@ } New-ItemProperty -Path 'HKCU:\SOFTWARE\Policies\Microsoft\Windows\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force Stop-Process -name explorer -force -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Features/EnableLegacyRecovery/index.html b/dev/features/Features/EnableLegacyRecovery/index.html index 94fa13776..c1398c0a9 100644 --- a/dev/features/Features/EnableLegacyRecovery/index.html +++ b/dev/features/Features/EnableLegacyRecovery/index.html @@ -21,4 +21,4 @@ } New-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Configuration Manager\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Features/EnableSearchSuggestions/index.html b/dev/features/Features/EnableSearchSuggestions/index.html index d54a9a250..a308cb972 100644 --- a/dev/features/Features/EnableSearchSuggestions/index.html +++ b/dev/features/Features/EnableSearchSuggestions/index.html @@ -21,4 +21,4 @@ } New-ItemProperty -Path 'HKCU:\SOFTWARE\Policies\Microsoft\Windows\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force Stop-Process -name explorer -force -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Features/Install/index.html b/dev/features/Features/Install/index.html index de0f5955a..29c1f75ae 100644 --- a/dev/features/Features/Install/index.html +++ b/dev/features/Features/Install/index.html @@ -43,4 +43,4 @@ Write-Host "===================================" } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Features/RegBackup/index.html b/dev/features/Features/RegBackup/index.html index f0588b1f9..8e54a2cb3 100644 --- a/dev/features/Features/RegBackup/index.html +++ b/dev/features/Features/RegBackup/index.html @@ -21,4 +21,4 @@ $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn "\Microsoft\Windows\Registry\RegIdleBackup"' $trigger = New-ScheduledTaskTrigger -Daily -At 00:30 Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System' -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Features/Sandbox/index.html b/dev/features/Features/Sandbox/index.html index a0094903f..cb88fa6e5 100644 --- a/dev/features/Features/Sandbox/index.html +++ b/dev/features/Features/Sandbox/index.html @@ -6,4 +6,4 @@ "Description": "Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.", "link": "https://christitustech.github.io/winutil/dev/features/Features/Sandbox" } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Features/dotnet/index.html b/dev/features/Features/dotnet/index.html index 874e0b4e5..3aca0897e 100644 --- a/dev/features/Features/dotnet/index.html +++ b/dev/features/Features/dotnet/index.html @@ -11,4 +11,4 @@ "InvokeScript": [], "link": "https://christitustech.github.io/winutil/dev/features/Features/dotnet" } -

    Features

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    Features to install

    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    \ No newline at end of file +

    Features

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    Features to install

    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Features/hyperv/index.html b/dev/features/Features/hyperv/index.html index b37140625..ec9298e99 100644 --- a/dev/features/Features/hyperv/index.html +++ b/dev/features/Features/hyperv/index.html @@ -20,4 +20,4 @@ "link": "https://christitustech.github.io/winutil/dev/features/Features/hyperv" }

    Features

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    Features to install

    • HypervisorPlatform
    • Microsoft-Hyper-V-All
    • Microsoft-Hyper-V
    • Microsoft-Hyper-V-Tools-All
    • Microsoft-Hyper-V-Management-PowerShell
    • Microsoft-Hyper-V-Hypervisor
    • Microsoft-Hyper-V-Services
    • Microsoft-Hyper-V-Management-Clients

    Invoke Script

    Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait
    -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Features/legacymedia/index.html b/dev/features/Features/legacymedia/index.html index 9854ad958..4f3cd56e6 100644 --- a/dev/features/Features/legacymedia/index.html +++ b/dev/features/Features/legacymedia/index.html @@ -13,4 +13,4 @@ "InvokeScript": [], "link": "https://christitustech.github.io/winutil/dev/features/Features/legacymedia" } -

    Features

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    Features to install

    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    \ No newline at end of file +

    Features

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    Features to install

    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Features/nfs/index.html b/dev/features/Features/nfs/index.html index c45f61507..69b84e114 100644 --- a/dev/features/Features/nfs/index.html +++ b/dev/features/Features/nfs/index.html @@ -23,4 +23,4 @@ Set-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default' -Name 'AnonymousGID' -Type DWord -Value 0 nfsadmin client start nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Features/wsl/index.html b/dev/features/Features/wsl/index.html index ec735dca4..b01499717 100644 --- a/dev/features/Features/wsl/index.html +++ b/dev/features/Features/wsl/index.html @@ -11,4 +11,4 @@ "InvokeScript": [], "link": "https://christitustech.github.io/winutil/dev/features/Features/wsl" } -

    Features

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    Features to install

    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    \ No newline at end of file +

    Features

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    Features to install

    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Fixes/Autologin/index.html b/dev/features/Fixes/Autologin/index.html index b11185075..5869bcbf4 100644 --- a/dev/features/Fixes/Autologin/index.html +++ b/dev/features/Fixes/Autologin/index.html @@ -19,4 +19,4 @@ Invoke-WebRequest -Uri "https://live.sysinternals.com/Autologon.exe" -OutFile "$env:temp\autologin.exe" cmd /c "$env:temp\autologin.exe" /accepteula } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Fixes/DISM/index.html b/dev/features/Fixes/DISM/index.html index fb93bca52..f5826f757 100644 --- a/dev/features/Fixes/DISM/index.html +++ b/dev/features/Fixes/DISM/index.html @@ -37,4 +37,4 @@ Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow; Read-Host '`nPress Enter to Continue'" -verb runas } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Fixes/Network/index.html b/dev/features/Fixes/Network/index.html index ffcd97caf..6344f460c 100644 --- a/dev/features/Fixes/Network/index.html +++ b/dev/features/Fixes/Network/index.html @@ -36,4 +36,4 @@ Write-Host "-- Network Configuration has been Reset --" Write-Host "==========================================" } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Fixes/RunAdobeCCCleanerTool/index.html b/dev/features/Fixes/RunAdobeCCCleanerTool/index.html index 5ce879091..ad4932cac 100644 --- a/dev/features/Fixes/RunAdobeCCCleanerTool/index.html +++ b/dev/features/Fixes/RunAdobeCCCleanerTool/index.html @@ -39,4 +39,4 @@ } } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Fixes/Update/index.html b/dev/features/Fixes/Update/index.html index 9c4fcda82..45ddd54ed 100644 --- a/dev/features/Fixes/Update/index.html +++ b/dev/features/Fixes/Update/index.html @@ -299,4 +299,4 @@ Write-Progress -Id 9 -Activity "Starting Windows Update Services" -Completed Write-Progress -Id 10 -Activity "Forcing discovery" -Completed } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Fixes/Winget/index.html b/dev/features/Fixes/Winget/index.html index c2b47c171..7b0bbe80e 100644 --- a/dev/features/Fixes/Winget/index.html +++ b/dev/features/Fixes/Winget/index.html @@ -21,4 +21,4 @@ Start-Process -FilePath "choco" -ArgumentList "install winget -y --force" -NoNewWindow -Wait } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Legacy-Windows-Panels/control/index.html b/dev/features/Legacy-Windows-Panels/control/index.html index 0c2f9744b..1ff2800b9 100644 --- a/dev/features/Legacy-Windows-Panels/control/index.html +++ b/dev/features/Legacy-Windows-Panels/control/index.html @@ -28,4 +28,4 @@ "WPFPaneluser" {cmd /c "control userpasswords2"} } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Legacy-Windows-Panels/network/index.html b/dev/features/Legacy-Windows-Panels/network/index.html index e723217ff..84750d3b1 100644 --- a/dev/features/Legacy-Windows-Panels/network/index.html +++ b/dev/features/Legacy-Windows-Panels/network/index.html @@ -28,4 +28,4 @@ "WPFPaneluser" {cmd /c "control userpasswords2"} } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Legacy-Windows-Panels/power/index.html b/dev/features/Legacy-Windows-Panels/power/index.html index 095d87a9b..a8588113c 100644 --- a/dev/features/Legacy-Windows-Panels/power/index.html +++ b/dev/features/Legacy-Windows-Panels/power/index.html @@ -28,4 +28,4 @@ "WPFPaneluser" {cmd /c "control userpasswords2"} } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Legacy-Windows-Panels/region/index.html b/dev/features/Legacy-Windows-Panels/region/index.html index 5c3db8bf9..caf899542 100644 --- a/dev/features/Legacy-Windows-Panels/region/index.html +++ b/dev/features/Legacy-Windows-Panels/region/index.html @@ -28,4 +28,4 @@ "WPFPaneluser" {cmd /c "control userpasswords2"} } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Legacy-Windows-Panels/sound/index.html b/dev/features/Legacy-Windows-Panels/sound/index.html index ae2dab58c..75dbff8ce 100644 --- a/dev/features/Legacy-Windows-Panels/sound/index.html +++ b/dev/features/Legacy-Windows-Panels/sound/index.html @@ -28,4 +28,4 @@ "WPFPaneluser" {cmd /c "control userpasswords2"} } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Legacy-Windows-Panels/system/index.html b/dev/features/Legacy-Windows-Panels/system/index.html index 22087eff7..45aa31ed9 100644 --- a/dev/features/Legacy-Windows-Panels/system/index.html +++ b/dev/features/Legacy-Windows-Panels/system/index.html @@ -28,4 +28,4 @@ "WPFPaneluser" {cmd /c "control userpasswords2"} } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/features/Legacy-Windows-Panels/user/index.html b/dev/features/Legacy-Windows-Panels/user/index.html index 0927e6899..759bc1d2b 100644 --- a/dev/features/Legacy-Windows-Panels/user/index.html +++ b/dev/features/Legacy-Windows-Panels/user/index.html @@ -28,4 +28,4 @@ "WPFPaneluser" {cmd /c "control userpasswords2"} } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/BingSearch/index.html b/dev/tweaks/Customize-Preferences/BingSearch/index.html index cb6ac4b1c..da9d03056 100644 --- a/dev/tweaks/Customize-Preferences/BingSearch/index.html +++ b/dev/tweaks/Customize-Preferences/BingSearch/index.html @@ -37,4 +37,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/DarkMode/index.html b/dev/tweaks/Customize-Preferences/DarkMode/index.html index ccf7cdda7..9a4df49eb 100644 --- a/dev/tweaks/Customize-Preferences/DarkMode/index.html +++ b/dev/tweaks/Customize-Preferences/DarkMode/index.html @@ -39,4 +39,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html b/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html index f04f513d8..7fdefb90a 100644 --- a/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html +++ b/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html @@ -37,4 +37,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/HiddenFiles/index.html b/dev/tweaks/Customize-Preferences/HiddenFiles/index.html index 1bf104881..d6c938324 100644 --- a/dev/tweaks/Customize-Preferences/HiddenFiles/index.html +++ b/dev/tweaks/Customize-Preferences/HiddenFiles/index.html @@ -37,4 +37,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html b/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html index 31d68fd8d..d62d6da53 100644 --- a/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html +++ b/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html @@ -45,4 +45,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/NumLock/index.html b/dev/tweaks/Customize-Preferences/NumLock/index.html index 84e483af2..8e8ad8017 100644 --- a/dev/tweaks/Customize-Preferences/NumLock/index.html +++ b/dev/tweaks/Customize-Preferences/NumLock/index.html @@ -38,4 +38,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/ShowExt/index.html b/dev/tweaks/Customize-Preferences/ShowExt/index.html index 2ca0b0175..d515ccaf0 100644 --- a/dev/tweaks/Customize-Preferences/ShowExt/index.html +++ b/dev/tweaks/Customize-Preferences/ShowExt/index.html @@ -34,4 +34,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/SnapFlyout/index.html b/dev/tweaks/Customize-Preferences/SnapFlyout/index.html index 3cc046915..995db488b 100644 --- a/dev/tweaks/Customize-Preferences/SnapFlyout/index.html +++ b/dev/tweaks/Customize-Preferences/SnapFlyout/index.html @@ -37,4 +37,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html b/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html index f65c99171..1039eeb74 100644 --- a/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html +++ b/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html @@ -37,4 +37,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/SnapWindow/index.html b/dev/tweaks/Customize-Preferences/SnapWindow/index.html index 1c98b92f6..4d44f5f1e 100644 --- a/dev/tweaks/Customize-Preferences/SnapWindow/index.html +++ b/dev/tweaks/Customize-Preferences/SnapWindow/index.html @@ -34,4 +34,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/StickyKeys/index.html b/dev/tweaks/Customize-Preferences/StickyKeys/index.html index 2c0be9183..316cd045a 100644 --- a/dev/tweaks/Customize-Preferences/StickyKeys/index.html +++ b/dev/tweaks/Customize-Preferences/StickyKeys/index.html @@ -34,4 +34,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/TaskView/index.html b/dev/tweaks/Customize-Preferences/TaskView/index.html index b9c244fae..68060d5d7 100644 --- a/dev/tweaks/Customize-Preferences/TaskView/index.html +++ b/dev/tweaks/Customize-Preferences/TaskView/index.html @@ -37,4 +37,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html b/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html index a2e3343d3..c4058339f 100644 --- a/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html +++ b/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html @@ -37,4 +37,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html b/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html index 3b459a180..ef0dd25f3 100644 --- a/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html +++ b/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html @@ -37,4 +37,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html b/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html index fd2a02af2..4d9c48494 100644 --- a/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html +++ b/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html @@ -37,4 +37,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Customize-Preferences/VerboseLogon/index.html b/dev/tweaks/Customize-Preferences/VerboseLogon/index.html index 3f60c34de..a2faaefb2 100644 --- a/dev/tweaks/Customize-Preferences/VerboseLogon/index.html +++ b/dev/tweaks/Customize-Preferences/VerboseLogon/index.html @@ -34,4 +34,4 @@ Write-Warning $psitem.Exception.StackTrace } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/AH/index.html b/dev/tweaks/Essential-Tweaks/AH/index.html index 299cac983..8a500cf2f 100644 --- a/dev/tweaks/Essential-Tweaks/AH/index.html +++ b/dev/tweaks/Essential-Tweaks/AH/index.html @@ -29,4 +29,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH" } -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: EnableActivityFeed

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PublishUserActivities

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: UploadUserActivities

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: EnableActivityFeed

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PublishUserActivities

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: UploadUserActivities

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html b/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html index 0fe41eff6..488c071e3 100644 --- a/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html +++ b/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html @@ -15,4 +15,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures" } -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DisableWindowsConsumerFeatures

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DisableWindowsConsumerFeatures

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/DVR/index.html b/dev/tweaks/Essential-Tweaks/DVR/index.html index 6daef7ad5..5164b102c 100644 --- a/dev/tweaks/Essential-Tweaks/DVR/index.html +++ b/dev/tweaks/Essential-Tweaks/DVR/index.html @@ -43,4 +43,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR" } -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: GameDVR_FSEBehavior

    Type: DWord

    Original Value: 1

    New Value: 2

    Registry Key: GameDVR_Enabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: GameDVR_HonorUserFSEBehaviorMode

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: GameDVR_EFSEFeatureFlags

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: AllowGameDVR

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: GameDVR_FSEBehavior

    Type: DWord

    Original Value: 1

    New Value: 2

    Registry Key: GameDVR_Enabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: GameDVR_HonorUserFSEBehaviorMode

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: GameDVR_EFSEFeatureFlags

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: AllowGameDVR

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html b/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html index d3a54147b..7018f1f04 100644 --- a/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html +++ b/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html @@ -12,4 +12,4 @@ }

    Invoke Script

    Get-ChildItem -Path "C:\Windows\Temp" *.* -Recurse | Remove-Item -Force -Recurse
         Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse
    -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html b/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html index 8aee224ba..f6674dddf 100644 --- a/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html +++ b/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html @@ -14,4 +14,4 @@ }

    Invoke Script

          cleanmgr.exe /d C: /VERYLOWDISK
           Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase
    -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html b/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html index fd6b9d196..6cbc3fe25 100644 --- a/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html +++ b/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html @@ -155,4 +155,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat" } -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: CreateDesktopShortcutDefault

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeEnhanceImagesEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PersonalizationReportingEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ShowRecommendationsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: HideFirstRunExperience

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: UserFeedbackAllowed

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ConfigureDoNotTrack

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: AlternateErrorPagesEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeCollectionsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeFollowEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeShoppingAssistantEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: MicrosoftEdgeInsiderPromotionEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PersonalizationReportingEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ShowMicrosoftRewards

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: WebWidgetAllowed

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: DiagnosticData

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeAssetDeliveryServiceEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeCollectionsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: CryptoWalletEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ConfigureDoNotTrack

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: WalletDonationEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: CreateDesktopShortcutDefault

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeEnhanceImagesEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PersonalizationReportingEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ShowRecommendationsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: HideFirstRunExperience

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: UserFeedbackAllowed

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ConfigureDoNotTrack

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: AlternateErrorPagesEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeCollectionsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeFollowEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeShoppingAssistantEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: MicrosoftEdgeInsiderPromotionEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PersonalizationReportingEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ShowMicrosoftRewards

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: WebWidgetAllowed

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: DiagnosticData

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeAssetDeliveryServiceEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EdgeCollectionsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: CryptoWalletEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ConfigureDoNotTrack

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: WalletDonationEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html b/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html index 64ad61179..d651c2ef3 100644 --- a/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html +++ b/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html @@ -54,4 +54,4 @@ # Set the property, creating it if it doesn't exist New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/Hiber/index.html b/dev/tweaks/Essential-Tweaks/Hiber/index.html index c6256550a..cf5115656 100644 --- a/dev/tweaks/Essential-Tweaks/Hiber/index.html +++ b/dev/tweaks/Essential-Tweaks/Hiber/index.html @@ -30,4 +30,4 @@ }

    Invoke Script

    powercfg.exe /hibernate off
     

    Undo Script

    powercfg.exe /hibernate on
    -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: HibernateEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ShowHibernateOption

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: HibernateEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ShowHibernateOption

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/Home/index.html b/dev/tweaks/Essential-Tweaks/Home/index.html index 963e47401..bd71270ed 100644 --- a/dev/tweaks/Essential-Tweaks/Home/index.html +++ b/dev/tweaks/Essential-Tweaks/Home/index.html @@ -18,4 +18,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home" } -

    Service Changes

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    Service Name: HomeGroupListener

    Startup Type: Manual

    Original Type: Automatic

    Service Name: HomeGroupProvider

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    \ No newline at end of file +

    Service Changes

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    Service Name: HomeGroupListener

    Startup Type: Manual

    Original Type: Automatic

    Service Name: HomeGroupProvider

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html b/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html index ab24a5249..c38c1e9c2 100644 --- a/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html +++ b/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html @@ -62,4 +62,4 @@ Start-Process -FilePath powercfg -ArgumentList "/change standby-timeout-dc 15" -NoNewWindow -Wait Start-Process -FilePath powercfg -ArgumentList "/change monitor-timeout-ac 15" -NoNewWindow -Wait Start-Process -FilePath powercfg -ArgumentList "/change monitor-timeout-dc 15" -NoNewWindow -Wait -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: Attributes

    Type: DWord

    Original Value: 1

    New Value: 2

    Registry Key: Attributes

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: Attributes

    Type: DWord

    Original Value: 1

    New Value: 2

    Registry Key: Attributes

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/Loc/index.html b/dev/tweaks/Essential-Tweaks/Loc/index.html index 70df92164..05178e579 100644 --- a/dev/tweaks/Essential-Tweaks/Loc/index.html +++ b/dev/tweaks/Essential-Tweaks/Loc/index.html @@ -36,4 +36,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc" } -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: Value

    Type: String

    Original Value: Allow

    New Value: Deny

    Registry Key: SensorPermissionState

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: Status

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: AutoUpdateEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: Value

    Type: String

    Original Value: Allow

    New Value: Deny

    Registry Key: SensorPermissionState

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: Status

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: AutoUpdateEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/Powershell7/index.html b/dev/tweaks/Essential-Tweaks/Powershell7/index.html index 0eca65f7f..177c8e8eb 100644 --- a/dev/tweaks/Essential-Tweaks/Powershell7/index.html +++ b/dev/tweaks/Essential-Tweaks/Powershell7/index.html @@ -352,4 +352,4 @@ $sync["Form"].taskbarItemInfo.Description = $description } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html b/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html index 045d0c4ac..34dffac16 100644 --- a/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html +++ b/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html @@ -14,4 +14,4 @@ }

    Invoke Script

    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')
     

    Undo Script

    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')
    -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/RestorePoint/index.html b/dev/tweaks/Essential-Tweaks/RestorePoint/index.html index 9136508be..96ae05d15 100644 --- a/dev/tweaks/Essential-Tweaks/RestorePoint/index.html +++ b/dev/tweaks/Essential-Tweaks/RestorePoint/index.html @@ -99,4 +99,4 @@ Checkpoint-Computer -Description $description -RestorePointType "MODIFY_SETTINGS" Write-Host -ForegroundColor Green "System Restore Point Created Successfully" } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/Services/index.html b/dev/tweaks/Essential-Tweaks/Services/index.html index 344b4bc4d..e1b5a3aa4 100644 --- a/dev/tweaks/Essential-Tweaks/Services/index.html +++ b/dev/tweaks/Essential-Tweaks/Services/index.html @@ -1418,4 +1418,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services" } -

    Service Changes

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    Service Name: AJRouter

    Startup Type: Disabled

    Original Type: Manual

    Service Name: ALG

    Startup Type: Manual

    Original Type: Manual

    Service Name: AppIDSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: AppMgmt

    Startup Type: Manual

    Original Type: Manual

    Service Name: AppReadiness

    Startup Type: Manual

    Original Type: Manual

    Service Name: AppVClient

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: AppXSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: Appinfo

    Startup Type: Manual

    Original Type: Manual

    Service Name: AssignedAccessManagerSvc

    Startup Type: Disabled

    Original Type: Manual

    Service Name: AudioEndpointBuilder

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: AudioSrv

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: Audiosrv

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: AxInstSV

    Startup Type: Manual

    Original Type: Manual

    Service Name: BDESVC

    Startup Type: Manual

    Original Type: Manual

    Service Name: BFE

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: BITS

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: BTAGService

    Startup Type: Manual

    Original Type: Manual

    Service Name: BcastDVRUserService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: BluetoothUserService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: BrokerInfrastructure

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: Browser

    Startup Type: Manual

    Original Type: Manual

    Service Name: BthAvctpSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: BthHFSrv

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: CDPSvc

    Startup Type: Manual

    Original Type: Automatic

    Service Name: CDPUserSvc_*

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: COMSysApp

    Startup Type: Manual

    Original Type: Manual

    Service Name: CaptureService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: CertPropSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: ClipSVC

    Startup Type: Manual

    Original Type: Manual

    Service Name: ConsentUxUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: CoreMessagingRegistrar

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: CredentialEnrollmentManagerUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: CryptSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: CscService

    Startup Type: Manual

    Original Type: Manual

    Service Name: DPS

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: DcomLaunch

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: DcpSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: DevQueryBroker

    Startup Type: Manual

    Original Type: Manual

    Service Name: DeviceAssociationBrokerSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: DeviceAssociationService

    Startup Type: Manual

    Original Type: Manual

    Service Name: DeviceInstall

    Startup Type: Manual

    Original Type: Manual

    Service Name: DevicePickerUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: DevicesFlowUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: Dhcp

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: DiagTrack

    Startup Type: Disabled

    Original Type: Automatic

    Service Name: DialogBlockingService

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: DispBrokerDesktopSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: DisplayEnhancementService

    Startup Type: Manual

    Original Type: Manual

    Service Name: DmEnrollmentSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: Dnscache

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: DoSvc

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: DsSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: DsmSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: DusmSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: EFS

    Startup Type: Manual

    Original Type: Manual

    Service Name: EapHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: EntAppSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: EventLog

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: EventSystem

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: FDResPub

    Startup Type: Manual

    Original Type: Manual

    Service Name: Fax

    Startup Type: Manual

    Original Type: Manual

    Service Name: FontCache

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: FrameServer

    Startup Type: Manual

    Original Type: Manual

    Service Name: FrameServerMonitor

    Startup Type: Manual

    Original Type: Manual

    Service Name: GraphicsPerfSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: HomeGroupListener

    Startup Type: Manual

    Original Type: Manual

    Service Name: HomeGroupProvider

    Startup Type: Manual

    Original Type: Manual

    Service Name: HvHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: IEEtwCollectorService

    Startup Type: Manual

    Original Type: Manual

    Service Name: IKEEXT

    Startup Type: Manual

    Original Type: Manual

    Service Name: InstallService

    Startup Type: Manual

    Original Type: Manual

    Service Name: InventorySvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: IpxlatCfgSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: KeyIso

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: KtmRm

    Startup Type: Manual

    Original Type: Manual

    Service Name: LSM

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: LanmanServer

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: LanmanWorkstation

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: LicenseManager

    Startup Type: Manual

    Original Type: Manual

    Service Name: LxpSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: MSDTC

    Startup Type: Manual

    Original Type: Manual

    Service Name: MSiSCSI

    Startup Type: Manual

    Original Type: Manual

    Service Name: MapsBroker

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: McpManagementService

    Startup Type: Manual

    Original Type: Manual

    Service Name: MessagingService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: MicrosoftEdgeElevationService

    Startup Type: Manual

    Original Type: Manual

    Service Name: MixedRealityOpenXRSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: MpsSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: MsKeyboardFilter

    Startup Type: Manual

    Original Type: Disabled

    Service Name: NPSMSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: NaturalAuthentication

    Startup Type: Manual

    Original Type: Manual

    Service Name: NcaSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: NcbService

    Startup Type: Manual

    Original Type: Manual

    Service Name: NcdAutoSetup

    Startup Type: Manual

    Original Type: Manual

    Service Name: NetSetupSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: NetTcpPortSharing

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: Netlogon

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: Netman

    Startup Type: Manual

    Original Type: Manual

    Service Name: NgcCtnrSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: NgcSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: NlaSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: OneSyncSvc_*

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: P9RdrService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: PNRPAutoReg

    Startup Type: Manual

    Original Type: Manual

    Service Name: PNRPsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: PcaSvc

    Startup Type: Manual

    Original Type: Automatic

    Service Name: PeerDistSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: PenService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: PerfHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: PhoneSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: PimIndexMaintenanceSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: PlugPlay

    Startup Type: Manual

    Original Type: Manual

    Service Name: PolicyAgent

    Startup Type: Manual

    Original Type: Manual

    Service Name: Power

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: PrintNotify

    Startup Type: Manual

    Original Type: Manual

    Service Name: PrintWorkflowUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: ProfSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: PushToInstall

    Startup Type: Manual

    Original Type: Manual

    Service Name: QWAVE

    Startup Type: Manual

    Original Type: Manual

    Service Name: RasAuto

    Startup Type: Manual

    Original Type: Manual

    Service Name: RasMan

    Startup Type: Manual

    Original Type: Manual

    Service Name: RemoteAccess

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: RemoteRegistry

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: RetailDemo

    Startup Type: Manual

    Original Type: Manual

    Service Name: RmSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: RpcEptMapper

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: RpcLocator

    Startup Type: Manual

    Original Type: Manual

    Service Name: RpcSs

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SCPolicySvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: SCardSvr

    Startup Type: Manual

    Original Type: Manual

    Service Name: SDRSVC

    Startup Type: Manual

    Original Type: Manual

    Service Name: SEMgrSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: SENS

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SNMPTRAP

    Startup Type: Manual

    Original Type: Manual

    Service Name: SNMPTrap

    Startup Type: Manual

    Original Type: Manual

    Service Name: SSDPSRV

    Startup Type: Manual

    Original Type: Manual

    Service Name: SamSs

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: ScDeviceEnum

    Startup Type: Manual

    Original Type: Manual

    Service Name: Schedule

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SecurityHealthService

    Startup Type: Manual

    Original Type: Manual

    Service Name: Sense

    Startup Type: Manual

    Original Type: Manual

    Service Name: SensorDataService

    Startup Type: Manual

    Original Type: Manual

    Service Name: SensorService

    Startup Type: Manual

    Original Type: Manual

    Service Name: SensrSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: SessionEnv

    Startup Type: Manual

    Original Type: Manual

    Service Name: SgrmBroker

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SharedAccess

    Startup Type: Manual

    Original Type: Manual

    Service Name: SharedRealitySvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: ShellHWDetection

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SmsRouter

    Startup Type: Manual

    Original Type: Manual

    Service Name: Spooler

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SstpSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: StateRepository

    Startup Type: Manual

    Original Type: Automatic

    Service Name: StiSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: StorSvc

    Startup Type: Manual

    Original Type: Automatic

    Service Name: SysMain

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SystemEventsBroker

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: TabletInputService

    Startup Type: Manual

    Original Type: Manual

    Service Name: TapiSrv

    Startup Type: Manual

    Original Type: Manual

    Service Name: TermService

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: TextInputManagementService

    Startup Type: Manual

    Original Type: Automatic

    Service Name: Themes

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: TieringEngineService

    Startup Type: Manual

    Original Type: Manual

    Service Name: TimeBroker

    Startup Type: Manual

    Original Type: Manual

    Service Name: TimeBrokerSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: TokenBroker

    Startup Type: Manual

    Original Type: Manual

    Service Name: TrkWks

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: TroubleshootingSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: TrustedInstaller

    Startup Type: Manual

    Original Type: Manual

    Service Name: UI0Detect

    Startup Type: Manual

    Original Type: Manual

    Service Name: UdkUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: UevAgentService

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: UmRdpService

    Startup Type: Manual

    Original Type: Manual

    Service Name: UnistoreSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: UserDataSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: UserManager

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: UsoSvc

    Startup Type: Manual

    Original Type: Automatic

    Service Name: VGAuthService

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: VMTools

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: VSS

    Startup Type: Manual

    Original Type: Manual

    Service Name: VacSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: VaultSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: W32Time

    Startup Type: Manual

    Original Type: Manual

    Service Name: WEPHOSTSVC

    Startup Type: Manual

    Original Type: Manual

    Service Name: WFDSConMgrSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WMPNetworkSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WManSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WPDBusEnum

    Startup Type: Manual

    Original Type: Manual

    Service Name: WSService

    Startup Type: Manual

    Original Type: Manual

    Service Name: WSearch

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: WaaSMedicSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WalletService

    Startup Type: Manual

    Original Type: Manual

    Service Name: WarpJITSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WbioSrvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: Wcmsvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: WcsPlugInService

    Startup Type: Manual

    Original Type: Manual

    Service Name: WdNisSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WdiServiceHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: WdiSystemHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: WebClient

    Startup Type: Manual

    Original Type: Manual

    Service Name: Wecsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WerSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WiaRpc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WinDefend

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: WinHttpAutoProxySvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WinRM

    Startup Type: Manual

    Original Type: Manual

    Service Name: Winmgmt

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: WlanSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: WpcMonSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WpnService

    Startup Type: Manual

    Original Type: Automatic

    Service Name: WpnUserService_*

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: XblAuthManager

    Startup Type: Manual

    Original Type: Manual

    Service Name: XblGameSave

    Startup Type: Manual

    Original Type: Manual

    Service Name: XboxGipSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: XboxNetApiSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: autotimesvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: bthserv

    Startup Type: Manual

    Original Type: Manual

    Service Name: camsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: cbdhsvc_*

    Startup Type: Manual

    Original Type: Automatic

    Service Name: cloudidsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: dcsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: defragsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: diagnosticshub.standardcollector.service

    Startup Type: Manual

    Original Type: Manual

    Service Name: diagsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: dmwappushservice

    Startup Type: Manual

    Original Type: Manual

    Service Name: dot3svc

    Startup Type: Manual

    Original Type: Manual

    Service Name: edgeupdate

    Startup Type: Manual

    Original Type: Automatic

    Service Name: edgeupdatem

    Startup Type: Manual

    Original Type: Manual

    Service Name: embeddedmode

    Startup Type: Manual

    Original Type: Manual

    Service Name: fdPHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: fhsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: gpsvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: hidserv

    Startup Type: Manual

    Original Type: Manual

    Service Name: icssvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: iphlpsvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: lfsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: lltdsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: lmhosts

    Startup Type: Manual

    Original Type: Manual

    Service Name: mpssvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: msiserver

    Startup Type: Manual

    Original Type: Manual

    Service Name: netprofm

    Startup Type: Manual

    Original Type: Manual

    Service Name: nsi

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: p2pimsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: p2psvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: perceptionsimulation

    Startup Type: Manual

    Original Type: Manual

    Service Name: pla

    Startup Type: Manual

    Original Type: Manual

    Service Name: seclogon

    Startup Type: Manual

    Original Type: Manual

    Service Name: shpamsvc

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: smphost

    Startup Type: Manual

    Original Type: Manual

    Service Name: spectrum

    Startup Type: Manual

    Original Type: Manual

    Service Name: sppsvc

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: ssh-agent

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: svsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: swprv

    Startup Type: Manual

    Original Type: Manual

    Service Name: tiledatamodelsvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: tzautoupdate

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: uhssvc

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: upnphost

    Startup Type: Manual

    Original Type: Manual

    Service Name: vds

    Startup Type: Manual

    Original Type: Manual

    Service Name: vm3dservice

    Startup Type: Manual

    Original Type: Automatic

    Service Name: vmicguestinterface

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmicheartbeat

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmickvpexchange

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmicrdv

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmicshutdown

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmictimesync

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmicvmsession

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmicvss

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmvss

    Startup Type: Manual

    Original Type: Manual

    Service Name: wbengine

    Startup Type: Manual

    Original Type: Manual

    Service Name: wcncsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: webthreatdefsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: webthreatdefusersvc_*

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: wercplsupport

    Startup Type: Manual

    Original Type: Manual

    Service Name: wisvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: wlidsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: wlpasvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: wmiApSrv

    Startup Type: Manual

    Original Type: Manual

    Service Name: workfolderssvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: wscsvc

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: wuauserv

    Startup Type: Manual

    Original Type: Manual

    Service Name: wudfsvc

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    \ No newline at end of file +

    Service Changes

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    Service Name: AJRouter

    Startup Type: Disabled

    Original Type: Manual

    Service Name: ALG

    Startup Type: Manual

    Original Type: Manual

    Service Name: AppIDSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: AppMgmt

    Startup Type: Manual

    Original Type: Manual

    Service Name: AppReadiness

    Startup Type: Manual

    Original Type: Manual

    Service Name: AppVClient

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: AppXSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: Appinfo

    Startup Type: Manual

    Original Type: Manual

    Service Name: AssignedAccessManagerSvc

    Startup Type: Disabled

    Original Type: Manual

    Service Name: AudioEndpointBuilder

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: AudioSrv

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: Audiosrv

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: AxInstSV

    Startup Type: Manual

    Original Type: Manual

    Service Name: BDESVC

    Startup Type: Manual

    Original Type: Manual

    Service Name: BFE

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: BITS

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: BTAGService

    Startup Type: Manual

    Original Type: Manual

    Service Name: BcastDVRUserService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: BluetoothUserService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: BrokerInfrastructure

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: Browser

    Startup Type: Manual

    Original Type: Manual

    Service Name: BthAvctpSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: BthHFSrv

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: CDPSvc

    Startup Type: Manual

    Original Type: Automatic

    Service Name: CDPUserSvc_*

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: COMSysApp

    Startup Type: Manual

    Original Type: Manual

    Service Name: CaptureService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: CertPropSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: ClipSVC

    Startup Type: Manual

    Original Type: Manual

    Service Name: ConsentUxUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: CoreMessagingRegistrar

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: CredentialEnrollmentManagerUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: CryptSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: CscService

    Startup Type: Manual

    Original Type: Manual

    Service Name: DPS

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: DcomLaunch

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: DcpSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: DevQueryBroker

    Startup Type: Manual

    Original Type: Manual

    Service Name: DeviceAssociationBrokerSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: DeviceAssociationService

    Startup Type: Manual

    Original Type: Manual

    Service Name: DeviceInstall

    Startup Type: Manual

    Original Type: Manual

    Service Name: DevicePickerUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: DevicesFlowUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: Dhcp

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: DiagTrack

    Startup Type: Disabled

    Original Type: Automatic

    Service Name: DialogBlockingService

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: DispBrokerDesktopSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: DisplayEnhancementService

    Startup Type: Manual

    Original Type: Manual

    Service Name: DmEnrollmentSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: Dnscache

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: DoSvc

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: DsSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: DsmSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: DusmSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: EFS

    Startup Type: Manual

    Original Type: Manual

    Service Name: EapHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: EntAppSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: EventLog

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: EventSystem

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: FDResPub

    Startup Type: Manual

    Original Type: Manual

    Service Name: Fax

    Startup Type: Manual

    Original Type: Manual

    Service Name: FontCache

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: FrameServer

    Startup Type: Manual

    Original Type: Manual

    Service Name: FrameServerMonitor

    Startup Type: Manual

    Original Type: Manual

    Service Name: GraphicsPerfSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: HomeGroupListener

    Startup Type: Manual

    Original Type: Manual

    Service Name: HomeGroupProvider

    Startup Type: Manual

    Original Type: Manual

    Service Name: HvHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: IEEtwCollectorService

    Startup Type: Manual

    Original Type: Manual

    Service Name: IKEEXT

    Startup Type: Manual

    Original Type: Manual

    Service Name: InstallService

    Startup Type: Manual

    Original Type: Manual

    Service Name: InventorySvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: IpxlatCfgSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: KeyIso

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: KtmRm

    Startup Type: Manual

    Original Type: Manual

    Service Name: LSM

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: LanmanServer

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: LanmanWorkstation

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: LicenseManager

    Startup Type: Manual

    Original Type: Manual

    Service Name: LxpSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: MSDTC

    Startup Type: Manual

    Original Type: Manual

    Service Name: MSiSCSI

    Startup Type: Manual

    Original Type: Manual

    Service Name: MapsBroker

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: McpManagementService

    Startup Type: Manual

    Original Type: Manual

    Service Name: MessagingService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: MicrosoftEdgeElevationService

    Startup Type: Manual

    Original Type: Manual

    Service Name: MixedRealityOpenXRSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: MpsSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: MsKeyboardFilter

    Startup Type: Manual

    Original Type: Disabled

    Service Name: NPSMSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: NaturalAuthentication

    Startup Type: Manual

    Original Type: Manual

    Service Name: NcaSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: NcbService

    Startup Type: Manual

    Original Type: Manual

    Service Name: NcdAutoSetup

    Startup Type: Manual

    Original Type: Manual

    Service Name: NetSetupSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: NetTcpPortSharing

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: Netlogon

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: Netman

    Startup Type: Manual

    Original Type: Manual

    Service Name: NgcCtnrSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: NgcSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: NlaSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: OneSyncSvc_*

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: P9RdrService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: PNRPAutoReg

    Startup Type: Manual

    Original Type: Manual

    Service Name: PNRPsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: PcaSvc

    Startup Type: Manual

    Original Type: Automatic

    Service Name: PeerDistSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: PenService_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: PerfHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: PhoneSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: PimIndexMaintenanceSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: PlugPlay

    Startup Type: Manual

    Original Type: Manual

    Service Name: PolicyAgent

    Startup Type: Manual

    Original Type: Manual

    Service Name: Power

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: PrintNotify

    Startup Type: Manual

    Original Type: Manual

    Service Name: PrintWorkflowUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: ProfSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: PushToInstall

    Startup Type: Manual

    Original Type: Manual

    Service Name: QWAVE

    Startup Type: Manual

    Original Type: Manual

    Service Name: RasAuto

    Startup Type: Manual

    Original Type: Manual

    Service Name: RasMan

    Startup Type: Manual

    Original Type: Manual

    Service Name: RemoteAccess

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: RemoteRegistry

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: RetailDemo

    Startup Type: Manual

    Original Type: Manual

    Service Name: RmSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: RpcEptMapper

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: RpcLocator

    Startup Type: Manual

    Original Type: Manual

    Service Name: RpcSs

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SCPolicySvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: SCardSvr

    Startup Type: Manual

    Original Type: Manual

    Service Name: SDRSVC

    Startup Type: Manual

    Original Type: Manual

    Service Name: SEMgrSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: SENS

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SNMPTRAP

    Startup Type: Manual

    Original Type: Manual

    Service Name: SNMPTrap

    Startup Type: Manual

    Original Type: Manual

    Service Name: SSDPSRV

    Startup Type: Manual

    Original Type: Manual

    Service Name: SamSs

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: ScDeviceEnum

    Startup Type: Manual

    Original Type: Manual

    Service Name: Schedule

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SecurityHealthService

    Startup Type: Manual

    Original Type: Manual

    Service Name: Sense

    Startup Type: Manual

    Original Type: Manual

    Service Name: SensorDataService

    Startup Type: Manual

    Original Type: Manual

    Service Name: SensorService

    Startup Type: Manual

    Original Type: Manual

    Service Name: SensrSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: SessionEnv

    Startup Type: Manual

    Original Type: Manual

    Service Name: SgrmBroker

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SharedAccess

    Startup Type: Manual

    Original Type: Manual

    Service Name: SharedRealitySvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: ShellHWDetection

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SmsRouter

    Startup Type: Manual

    Original Type: Manual

    Service Name: Spooler

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SstpSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: StateRepository

    Startup Type: Manual

    Original Type: Automatic

    Service Name: StiSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: StorSvc

    Startup Type: Manual

    Original Type: Automatic

    Service Name: SysMain

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: SystemEventsBroker

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: TabletInputService

    Startup Type: Manual

    Original Type: Manual

    Service Name: TapiSrv

    Startup Type: Manual

    Original Type: Manual

    Service Name: TermService

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: TextInputManagementService

    Startup Type: Manual

    Original Type: Automatic

    Service Name: Themes

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: TieringEngineService

    Startup Type: Manual

    Original Type: Manual

    Service Name: TimeBroker

    Startup Type: Manual

    Original Type: Manual

    Service Name: TimeBrokerSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: TokenBroker

    Startup Type: Manual

    Original Type: Manual

    Service Name: TrkWks

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: TroubleshootingSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: TrustedInstaller

    Startup Type: Manual

    Original Type: Manual

    Service Name: UI0Detect

    Startup Type: Manual

    Original Type: Manual

    Service Name: UdkUserSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: UevAgentService

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: UmRdpService

    Startup Type: Manual

    Original Type: Manual

    Service Name: UnistoreSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: UserDataSvc_*

    Startup Type: Manual

    Original Type: Manual

    Service Name: UserManager

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: UsoSvc

    Startup Type: Manual

    Original Type: Automatic

    Service Name: VGAuthService

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: VMTools

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: VSS

    Startup Type: Manual

    Original Type: Manual

    Service Name: VacSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: VaultSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: W32Time

    Startup Type: Manual

    Original Type: Manual

    Service Name: WEPHOSTSVC

    Startup Type: Manual

    Original Type: Manual

    Service Name: WFDSConMgrSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WMPNetworkSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WManSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WPDBusEnum

    Startup Type: Manual

    Original Type: Manual

    Service Name: WSService

    Startup Type: Manual

    Original Type: Manual

    Service Name: WSearch

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: WaaSMedicSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WalletService

    Startup Type: Manual

    Original Type: Manual

    Service Name: WarpJITSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WbioSrvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: Wcmsvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: WcsPlugInService

    Startup Type: Manual

    Original Type: Manual

    Service Name: WdNisSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WdiServiceHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: WdiSystemHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: WebClient

    Startup Type: Manual

    Original Type: Manual

    Service Name: Wecsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WerSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WiaRpc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WinDefend

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: WinHttpAutoProxySvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WinRM

    Startup Type: Manual

    Original Type: Manual

    Service Name: Winmgmt

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: WlanSvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: WpcMonSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: WpnService

    Startup Type: Manual

    Original Type: Automatic

    Service Name: WpnUserService_*

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: XblAuthManager

    Startup Type: Manual

    Original Type: Manual

    Service Name: XblGameSave

    Startup Type: Manual

    Original Type: Manual

    Service Name: XboxGipSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: XboxNetApiSvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: autotimesvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: bthserv

    Startup Type: Manual

    Original Type: Manual

    Service Name: camsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: cbdhsvc_*

    Startup Type: Manual

    Original Type: Automatic

    Service Name: cloudidsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: dcsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: defragsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: diagnosticshub.standardcollector.service

    Startup Type: Manual

    Original Type: Manual

    Service Name: diagsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: dmwappushservice

    Startup Type: Manual

    Original Type: Manual

    Service Name: dot3svc

    Startup Type: Manual

    Original Type: Manual

    Service Name: edgeupdate

    Startup Type: Manual

    Original Type: Automatic

    Service Name: edgeupdatem

    Startup Type: Manual

    Original Type: Manual

    Service Name: embeddedmode

    Startup Type: Manual

    Original Type: Manual

    Service Name: fdPHost

    Startup Type: Manual

    Original Type: Manual

    Service Name: fhsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: gpsvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: hidserv

    Startup Type: Manual

    Original Type: Manual

    Service Name: icssvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: iphlpsvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: lfsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: lltdsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: lmhosts

    Startup Type: Manual

    Original Type: Manual

    Service Name: mpssvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: msiserver

    Startup Type: Manual

    Original Type: Manual

    Service Name: netprofm

    Startup Type: Manual

    Original Type: Manual

    Service Name: nsi

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: p2pimsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: p2psvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: perceptionsimulation

    Startup Type: Manual

    Original Type: Manual

    Service Name: pla

    Startup Type: Manual

    Original Type: Manual

    Service Name: seclogon

    Startup Type: Manual

    Original Type: Manual

    Service Name: shpamsvc

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: smphost

    Startup Type: Manual

    Original Type: Manual

    Service Name: spectrum

    Startup Type: Manual

    Original Type: Manual

    Service Name: sppsvc

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: ssh-agent

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: svsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: swprv

    Startup Type: Manual

    Original Type: Manual

    Service Name: tiledatamodelsvc

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: tzautoupdate

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: uhssvc

    Startup Type: Disabled

    Original Type: Disabled

    Service Name: upnphost

    Startup Type: Manual

    Original Type: Manual

    Service Name: vds

    Startup Type: Manual

    Original Type: Manual

    Service Name: vm3dservice

    Startup Type: Manual

    Original Type: Automatic

    Service Name: vmicguestinterface

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmicheartbeat

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmickvpexchange

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmicrdv

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmicshutdown

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmictimesync

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmicvmsession

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmicvss

    Startup Type: Manual

    Original Type: Manual

    Service Name: vmvss

    Startup Type: Manual

    Original Type: Manual

    Service Name: wbengine

    Startup Type: Manual

    Original Type: Manual

    Service Name: wcncsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: webthreatdefsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: webthreatdefusersvc_*

    Startup Type: Automatic

    Original Type: Automatic

    Service Name: wercplsupport

    Startup Type: Manual

    Original Type: Manual

    Service Name: wisvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: wlidsvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: wlpasvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: wmiApSrv

    Startup Type: Manual

    Original Type: Manual

    Service Name: workfolderssvc

    Startup Type: Manual

    Original Type: Manual

    Service Name: wscsvc

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    Service Name: wuauserv

    Startup Type: Manual

    Original Type: Manual

    Service Name: wudfsvc

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/Storage/index.html b/dev/tweaks/Essential-Tweaks/Storage/index.html index 4ec758cd6..255b4d5cb 100644 --- a/dev/tweaks/Essential-Tweaks/Storage/index.html +++ b/dev/tweaks/Essential-Tweaks/Storage/index.html @@ -14,4 +14,4 @@ }

    Invoke Script

    Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy" -Name "01" -Value 0 -Type Dword -Force
     

    Undo Script

    Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy" -Name "01" -Value 1 -Type Dword -Force
    -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/Tele/index.html b/dev/tweaks/Essential-Tweaks/Tele/index.html index 206324820..56f4b56d5 100644 --- a/dev/tweaks/Essential-Tweaks/Tele/index.html +++ b/dev/tweaks/Essential-Tweaks/Tele/index.html @@ -401,4 +401,4 @@ # Disable Defender Auto Sample Submission Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: AllowTelemetry

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: AllowTelemetry

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ContentDeliveryAllowed

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: OemPreInstalledAppsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PreInstalledAppsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PreInstalledAppsEverEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SilentInstalledAppsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SubscribedContent-338387Enabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SubscribedContent-338388Enabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SubscribedContent-338389Enabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SubscribedContent-353698Enabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SystemPaneSuggestionsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: NumberOfSIUFInPeriod

    Type: DWord

    Original Value: 0

    New Value: 0

    Registry Key: DoNotShowFeedbackNotifications

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: DisableTailoredExperiencesWithDiagnosticData

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: DisabledByGroupPolicy

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: Disabled

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: DODownloadMode

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: fAllowToGetHelp

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EnthusiastMode

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: ShowTaskViewButton

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PeopleBand

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: LaunchTo

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: LongPathsEnabled

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: SearchOrderConfig

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: SystemResponsiveness

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: NetworkThrottlingIndex

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    Registry Key: MenuShowDelay

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: AutoEndTasks

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: ClearPageFileAtShutdown

    Type: DWord

    Original Value: 0

    New Value: 0

    Registry Key: Start

    Type: DWord

    Original Value: 1

    New Value: 2

    Registry Key: MouseHoverTime

    Type: String

    Original Value: 400

    New Value: 400

    Registry Key: IRPStackSize

    Type: DWord

    Original Value: 20

    New Value: 30

    Registry Key: EnableFeeds

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ShellFeedsTaskbarViewMode

    Type: DWord

    Original Value: 1

    New Value: 2

    Registry Key: HideSCAMeetNow

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: ScoobeSystemSettingEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Scheduled Task Changes

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    Task Name: Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Application Experience\ProgramDataUpdater

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Autochk\Proxy

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Customer Experience Improvement Program\Consolidator

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Customer Experience Improvement Program\UsbCeip

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Feedback\Siuf\DmClient

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Feedback\Siuf\DmClientOnScenarioDownload

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Windows Error Reporting\QueueReporting

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Application Experience\MareBackup

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Application Experience\StartupAppTask

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Application Experience\PcaPatchDbTask

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Maps\MapsUpdateTask

    State: Disabled

    Original State: Enabled

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: AllowTelemetry

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: AllowTelemetry

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ContentDeliveryAllowed

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: OemPreInstalledAppsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PreInstalledAppsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PreInstalledAppsEverEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SilentInstalledAppsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SubscribedContent-338387Enabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SubscribedContent-338388Enabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SubscribedContent-338389Enabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SubscribedContent-353698Enabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SystemPaneSuggestionsEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: NumberOfSIUFInPeriod

    Type: DWord

    Original Value: 0

    New Value: 0

    Registry Key: DoNotShowFeedbackNotifications

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: DisableTailoredExperiencesWithDiagnosticData

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: DisabledByGroupPolicy

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: Disabled

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: DODownloadMode

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: fAllowToGetHelp

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: EnthusiastMode

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: ShowTaskViewButton

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: PeopleBand

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: LaunchTo

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: LongPathsEnabled

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: SearchOrderConfig

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: SystemResponsiveness

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: NetworkThrottlingIndex

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    Registry Key: MenuShowDelay

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: AutoEndTasks

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: ClearPageFileAtShutdown

    Type: DWord

    Original Value: 0

    New Value: 0

    Registry Key: Start

    Type: DWord

    Original Value: 1

    New Value: 2

    Registry Key: MouseHoverTime

    Type: String

    Original Value: 400

    New Value: 400

    Registry Key: IRPStackSize

    Type: DWord

    Original Value: 20

    New Value: 30

    Registry Key: EnableFeeds

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ShellFeedsTaskbarViewMode

    Type: DWord

    Original Value: 1

    New Value: 2

    Registry Key: HideSCAMeetNow

    Type: DWord

    Original Value: 1

    New Value: 1

    Registry Key: ScoobeSystemSettingEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    Scheduled Task Changes

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    Task Name: Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Application Experience\ProgramDataUpdater

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Autochk\Proxy

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Customer Experience Improvement Program\Consolidator

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Customer Experience Improvement Program\UsbCeip

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Feedback\Siuf\DmClient

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Feedback\Siuf\DmClientOnScenarioDownload

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Windows Error Reporting\QueueReporting

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Application Experience\MareBackup

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Application Experience\StartupAppTask

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Application Experience\PcaPatchDbTask

    State: Disabled

    Original State: Enabled

    Task Name: Microsoft\Windows\Maps\MapsUpdateTask

    State: Disabled

    Original State: Enabled

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/Teredo/index.html b/dev/tweaks/Essential-Tweaks/Teredo/index.html index c20b46b32..41dfce3ca 100644 --- a/dev/tweaks/Essential-Tweaks/Teredo/index.html +++ b/dev/tweaks/Essential-Tweaks/Teredo/index.html @@ -23,4 +23,4 @@ }

    Invoke Script

    netsh interface teredo set state disabled
     

    Undo Script

    netsh interface teredo set state default
    -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DisabledComponents

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DisabledComponents

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/Wifi/index.html b/dev/tweaks/Essential-Tweaks/Wifi/index.html index add764e96..2c6fa406f 100644 --- a/dev/tweaks/Essential-Tweaks/Wifi/index.html +++ b/dev/tweaks/Essential-Tweaks/Wifi/index.html @@ -22,4 +22,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi" } -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: Value

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: Value

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: Value

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: Value

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Performance-Plans/AddUltPerf/index.html b/dev/tweaks/Performance-Plans/AddUltPerf/index.html index 4c6ab4ef3..c0ebca77c 100644 --- a/dev/tweaks/Performance-Plans/AddUltPerf/index.html +++ b/dev/tweaks/Performance-Plans/AddUltPerf/index.html @@ -60,4 +60,4 @@ Write-Warning $psitem.Exception.Message } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html b/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html index dd68bd7c7..1459107a7 100644 --- a/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html +++ b/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html @@ -60,4 +60,4 @@ Write-Warning $psitem.Exception.Message } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Shortcuts/Shortcut/index.html b/dev/tweaks/Shortcuts/Shortcut/index.html index cd52d8de8..96250adb3 100644 --- a/dev/tweaks/Shortcuts/Shortcut/index.html +++ b/dev/tweaks/Shortcuts/Shortcut/index.html @@ -76,4 +76,4 @@ Write-Host "Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin" } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html index 61a075a9e..588dab3e9 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html @@ -198,4 +198,4 @@ } catch { Write-Error "Failed to flush DNS cache. Error: $_" } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html index ebdb3c50b..e69c362c9 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html @@ -149,4 +149,4 @@ $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru $proc.WaitForExit() } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html index 77edf3fe6..2da6a2d22 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html @@ -228,4 +228,4 @@ RestoreCCService AcrobatUpdates -

    Service Changes

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    Service Name: AGSService

    Startup Type: Disabled

    Original Type: Automatic

    Service Name: AGMService

    Startup Type: Disabled

    Original Type: Automatic

    Service Name: AdobeUpdateService

    Startup Type: Manual

    Original Type: Automatic

    Service Name: Adobe Acrobat Update

    Startup Type: Manual

    Original Type: Automatic

    Service Name: Adobe Genuine Monitor Service

    Startup Type: Disabled

    Original Type: Automatic

    Service Name: AdobeARMservice

    Startup Type: Manual

    Original Type: Automatic

    Service Name: Adobe Licensing Console

    Startup Type: Manual

    Original Type: Automatic

    Service Name: CCXProcess

    Startup Type: Manual

    Original Type: Automatic

    Service Name: AdobeIPCBroker

    Startup Type: Manual

    Original Type: Automatic

    Service Name: CoreSync

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    \ No newline at end of file +

    Service Changes

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    Service Name: AGSService

    Startup Type: Disabled

    Original Type: Automatic

    Service Name: AGMService

    Startup Type: Disabled

    Original Type: Automatic

    Service Name: AdobeUpdateService

    Startup Type: Manual

    Original Type: Automatic

    Service Name: Adobe Acrobat Update

    Startup Type: Manual

    Original Type: Automatic

    Service Name: Adobe Genuine Monitor Service

    Startup Type: Disabled

    Original Type: Automatic

    Service Name: AdobeARMservice

    Startup Type: Manual

    Original Type: Automatic

    Service Name: Adobe Licensing Console

    Startup Type: Manual

    Original Type: Automatic

    Service Name: CCXProcess

    Startup Type: Manual

    Original Type: Automatic

    Service Name: AdobeIPCBroker

    Startup Type: Manual

    Original Type: Automatic

    Service Name: CoreSync

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html index f72714b59..793605155 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html @@ -15,4 +15,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps" } -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: GlobalUserDisabled

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: GlobalUserDisabled

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html index ee7524326..6c3d938ca 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html @@ -15,4 +15,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO" } -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html index be9816367..3fefb83bf 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html @@ -97,4 +97,4 @@ } Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';

    Undo Script

          Write-Host "LMS vPro needs to be redownloaded from intel.com"
    -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html index 92a2c6873..0098174f1 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html @@ -22,4 +22,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications" } -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DisableNotificationCenter

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: ToastEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DisableNotificationCenter

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: ToastEnabled

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html index fa2842e97..03e9cf1ab 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html @@ -23,4 +23,4 @@ }

    Invoke Script

    Disable-NetAdapterBinding -Name "*" -ComponentID ms_tcpip6
     

    Undo Script

    Enable-NetAdapterBinding -Name "*" -ComponentID ms_tcpip6
    -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DisabledComponents

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DisabledComponents

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html index 0627e28e7..b67072762 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html @@ -107,4 +107,4 @@ }

    Invoke Script

    Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "UserPreferencesMask" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))
     

    Undo Script

    Remove-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "UserPreferencesMask"
    -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DragFullWindows

    Type: String

    Original Value: 1

    New Value: 0

    Registry Key: MenuShowDelay

    Type: String

    Original Value: 1

    New Value: 200

    Registry Key: MinAnimate

    Type: String

    Original Value: 1

    New Value: 0

    Registry Key: KeyboardDelay

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ListviewAlphaSelect

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ListviewShadow

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: TaskbarAnimations

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: VisualFXSetting

    Type: DWord

    Original Value: 1

    New Value: 3

    Registry Key: EnableAeroPeek

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: TaskbarMn

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: TaskbarDa

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ShowTaskViewButton

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SearchboxTaskbarMode

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DragFullWindows

    Type: String

    Original Value: 1

    New Value: 0

    Registry Key: MenuShowDelay

    Type: String

    Original Value: 1

    New Value: 200

    Registry Key: MinAnimate

    Type: String

    Original Value: 1

    New Value: 0

    Registry Key: KeyboardDelay

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ListviewAlphaSelect

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ListviewShadow

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: TaskbarAnimations

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: VisualFXSetting

    Type: DWord

    Original Value: 1

    New Value: 3

    Registry Key: EnableAeroPeek

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: TaskbarMn

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: TaskbarDa

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: ShowTaskViewButton

    Type: DWord

    Original Value: 1

    New Value: 0

    Registry Key: SearchboxTaskbarMode

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html index 5817e824a..a3e6619a6 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html @@ -25,4 +25,4 @@ $ProgressPreference = $Initial_ProgressPreference } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html index a7875b7c0..61d46ec7a 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html @@ -45,4 +45,4 @@ dism /online /remove-package /package-name:Microsoft.Windows.Copilot

    Undo Script

          Write-Host "Install Copilot"
           dism /online /add-package /package-name:Microsoft.Windows.Copilot
    -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: TurnOffWindowsCopilot

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: TurnOffWindowsCopilot

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: ShowCopilotButton

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: TurnOffWindowsCopilot

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: TurnOffWindowsCopilot

    Type: DWord

    Original Value: 0

    New Value: 1

    Registry Key: ShowCopilotButton

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html index d6cb32c49..bc045282e 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html @@ -172,4 +172,4 @@ } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html index e4429db28..9c6bd8b90 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html @@ -26,4 +26,4 @@

    Undo Script

          REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}" /f /ve /t REG_SZ /d "{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}"
           REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}" /f /ve /t REG_SZ /d "CLSID_MSGraphHomeFolder"
           REG DELETE "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /f /v "LaunchTo"
    -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html index 9aff95610..ef3c39e6d 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html @@ -172,4 +172,4 @@ }

    Undo Script

          Write-Host "Install OneDrive"
           Start-Process -FilePath winget -ArgumentList "install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive " -NoNewWindow -Wait
    -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html index 450f3ff8c..67a638e1a 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html @@ -32,4 +32,4 @@ Write-Host Restarting explorer.exe ... $process = Get-Process -Name "explorer" Stop-Process -InputObject $process -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html index d28f92526..5df6fd494 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html @@ -15,4 +15,4 @@ ], "link": "https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC" } -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: RealTimeIsUniversal

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: RealTimeIsUniversal

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html index e060f836e..d9e053a9d 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html @@ -54,4 +54,4 @@ } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html index 40ddf48d3..f097ec05e 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html @@ -63,4 +63,4 @@ # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon) } } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html index 9d518890f..f5ac1c05e 100644 --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html @@ -7,4 +7,4 @@ "ComboItems": "Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult", "link": "https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns" } -

    View the JSON file

    \ No newline at end of file +

    View the JSON file

    \ No newline at end of file diff --git a/devdocs/index.html b/devdocs/index.html index b96e94669..e656411ea 100644 --- a/devdocs/index.html +++ b/devdocs/index.html @@ -1 +1 @@ - Dev Docs - WinUtil Documentation

    Table of Contents

    Tweaks

    z--Advanced-Tweaks---CAUTION

    Essential-Tweaks

    Shortcuts

    Customize-Preferences

    Performance-Plans

    Features

    Legacy-Windows-Panels

    Fixes

    Features

    \ No newline at end of file + Dev Docs - WinUtil Documentation

    Table of Contents

    Tweaks

    z--Advanced-Tweaks---CAUTION

    Essential-Tweaks

    Shortcuts

    Customize-Preferences

    Performance-Plans

    Features

    Legacy-Windows-Panels

    Fixes

    Features

    \ No newline at end of file diff --git a/faq/index.html b/faq/index.html index b0d6ee15d..f80574452 100644 --- a/faq/index.html +++ b/faq/index.html @@ -1 +1 @@ - FAQ - WinUtil Documentation

    FAQ's

    How do I uninstall WinUtil?

    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.

    I applied a tweak and now something doesn't work, what do I do?

    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking "Undo Selected Tweaks".
    \ No newline at end of file + FAQ - WinUtil Documentation

    FAQ's

    How do I uninstall WinUtil?

    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.

    I applied a tweak and now something doesn't work, what do I do?

    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking "Undo Selected Tweaks".
    \ No newline at end of file diff --git a/index.html b/index.html index 39a6af899..87a456111 100644 --- a/index.html +++ b/index.html @@ -1,2 +1,2 @@ WinUtil Documentation

    Welcome to the WinUtil Documentation!

    Version GitHub Downloads (specific asset, all releases) Discord Community Server

    Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you’re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

    Running the latest release of WinUtil

    • You will first need to start a Powershell terminal as Admin.
    • Now you can run the following command:
      irm christitus.com/win | iex
      -

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    \ No newline at end of file +

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    \ No newline at end of file diff --git a/search/search_index.json b/search/search_index.json index ce50f13d0..248ec2606 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

    Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

    "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
    • You will first need to start a Powershell terminal as Admin.
    • Now you can run the following command:
      irm christitus.com/win | iex\n

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
    • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
    • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

    If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

    Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
    • Script doesn't run/PowerShell crashes:
    • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
    • Run:
      Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
    • Run:
      irm christitus.com/win | iex\n
    "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
    • Windows taking longer to shut down:
    • #69 Turn on fast startup: Press Windows key + R, then type:
      control /name Microsoft.PowerOptions /page pageGlobalSettings\n
    • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
      powercfg /H off\n
    • #69 95 #232 Windows Search does not work: Enable Background Apps
    • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

      Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

    • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

    • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

    • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

    "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
    • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

    • Check Battery Health:

    • Open a Command Prompt as an administrator.
    • Run the following command to generate a battery report:
      powercfg /batteryreport /output \"C:\\battery_report.html\"\n
    • Open the generated HTML report to review information about battery health and usage.

    • Review Power Settings:

    • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
    • Adjust power plan settings based on your preferences and usage patterns.
    • Click on \"Additional power settings\" to access advanced power settings.

    • Identify Power-Hungry Apps:

    • Right-click on the taskbar and select \"Task Manager.\"
    • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
    • Consider closing unnecessary background applications.

    • Update Drivers:

    • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
    • Ensure graphics, chipset, and other essential drivers are up to date.

    • Check for Windows Updates:

    • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
    • Check for and install any available updates for your operating system.

    • Reduce Screen Brightness:

    • Adjust screen brightness based on your preferences and lighting conditions.
    • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

    • Battery Saver Mode:

    • Go to \"Settings\" > \"System\" > \"Battery.\"
    • Turn on \"Battery saver\" to limit background activity and conserve power.

    • Check Power Usage in Settings:

    • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
    • Review the list of apps and their power usage.

    • Check Background Apps:

    • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
    • Disable unnecessary apps running in the background.

    • Use Powercfg for Analysis:

      • Open a Command Prompt as an administrator.
      • Run the following command to analyze energy usage and generate a report:
        powercfg /energy /output \"C:\\energy_report.html\"\n
      • Open the generated HTML report to identify energy consumption patterns.
    • Review Event Viewer:

      • Open Event Viewer by searching for it in the Start menu.
      • Navigate to \"Windows Logs\" > \"System.\"
      • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
    • Check Wake-up Sources:

      • Open a Command Prompt as an administrator.
      • Use the command powercfg /requests to identify processes preventing sleep.
      • Check Task Scheduler for tasks waking up the computer.
      • Use the command powercfg /waketimers to view active wake timers.
    • Resource Monitor:

      • Open Resource Monitor from the Start menu.
      • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
    • Windows Settings - Activity History:

      • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
      • Turn off \"Let Windows collect my activities from this PC.\"
    • Network Adapters:

      • Open Device Manager by searching for it in the Start menu.
      • Locate your network adapter, right-click, and go to \"Properties.\"
      • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
    • Review Installed Applications:

      • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
      • Check settings/preferences of individual applications for power-related options.
      • Uninstall unnecessary or problematic software.
    • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

    "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
    • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

    • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

    • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

      sfc /scannow\n

    • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

    • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

    • Press Win + R to open the Run dialog.
    • Type services.msc and press Enter.
    • Locate \"Windows Management Instrumentation\" in the list.
    • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

    • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

    • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

    • Press Win + X and select \"Event Viewer.\"

    • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
    • Look for entries with the source related to WMI or the application use to mount the ISO.

    • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

    • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

    "},{"location":"contribute/","title":"How to Contribute?","text":""},{"location":"contribute/#testing","title":"Testing","text":"
    • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!
    "},{"location":"contribute/#run-the-latest-pre-release","title":"Run the latest pre-release","text":"
    irm christitus.com/windev | iex\n

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    "},{"location":"contribute/#issues","title":"Issues","text":"
    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the \"Issues\" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
    "},{"location":"contribute/#contribute-code","title":"Contribute Code","text":"
    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include \"WPF\" or \"WinUtil\" in the file name so it can be loaded into the runspace.

    "},{"location":"contribute/#walk-through","title":"Walk through","text":"
    • This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
      • Commit through WEB
      • Commit through GitHub Desktop
      • Create a Pull Request
    "},{"location":"contribute/#overview","title":"Overview","text":"
    graph LR\n\u00a0 A[Fork Project] --> B[Clone Repository];\n\u00a0 B --> C[Create New Branch];\n\u00a0 C --> D[Make Changes];\n\u00a0 D --> G[Test Changes];\n\u00a0 G --> H{Tests Passed?};\n\u00a0 H -->|Yes| E[Commit Changes];\n\u00a0 E --> F[Push Branch];\n\u00a0 H -->|No| J[Fix Issues];\n\u00a0 F --> K[Create Pull Request];\n\u00a0 K --> L[Fill out PR template];\n\u00a0 J --> G;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    "},{"location":"contribute/#fork-the-repo","title":"Fork the Repo","text":"
    • Fork the WinUtil Repository here to create a copy that will be available in your repository list.
    "},{"location":"contribute/#clone-the-fork","title":"Clone the Fork","text":"

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under \"Your Repositories\" and press \"clone {repo name}\"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    "},{"location":"contribute/#testing-your-changes","title":"Testing your changes","text":"
    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\\Compile.ps1 -run
    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
    "},{"location":"contribute/#committing-the-changes","title":"Committing the changes","text":"
    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:
    • Now, commit your changes once you are happy with the result.
    • Push the changes to upload them to your fork on github.com.
    "},{"location":"contribute/#making-a-pr","title":"Making a PR","text":"
    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the \"/windev\" build.
    • If you do not see your feature in the main \"/win\" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
    • Adobe Debloat
    • Adobe Network Block
    • Disable Background Apps
    • Disable Fullscreen Optimizations
    • Disable Intel MM (vPro LMS)
    • Disable IPv6
    • Disable Microsoft Copilot
    • Disable Notification Tray/Calendar
    • DNS
    • Remove ALL MS Store Apps - NOT RECOMMENDED
    • Remove Home and Gallery from explorer
    • Remove Microsoft Edge
    • Remove OneDrive
    • Run OO Shutup 10
    • Run Tweaks
    • Set Classic Right-Click Menu
    • Set Display for Performance
    • Set Time to UTC (Dual Boot)
    • Undo Selected Tweaks
    "},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
    • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
    • Create Restore Point
    • Debloat Edge
    • Delete Temporary Files
    • Disable Activity History
    • Disable ConsumerFeatures
    • Disable GameDVR
    • Disable Hibernation
    • Disable Homegroup
    • Disable Location Tracking
    • Disable Powershell 7 Telemetry
    • Disable Storage Sense
    • Disable Telemetry
    • Disable Teredo
    • Disable Wifi-Sense
    • Enable End Task With Right Click
    • Run Disk Cleanup
    • Set Hibernation as default (good for laptops)
    • Set Services to Manual
    "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
    • Create WinUtil Shortcut
    "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
    • Bing Search in Start Menu
    • Center Taskbar Items
    • Dark Theme for Windows
    • Detailed BSoD
    • Mouse Acceleration
    • NumLock on Startup
    • Search Button in Taskbar
    • Show File Extensions
    • Show Hidden Files
    • Snap Assist Flyout
    • Snap Assist Suggestion
    • Snap Window
    • Sticky Keys
    • Task View Button in Taskbar
    • Verbose Messages During Logon
    • Widgets Button in Taskbar
    "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
    • Add and Activate Ultimate Performance Profile
    • Remove Ultimate Performance Profile
    "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"devdocs/#fixes","title":"Fixes","text":"
    • Remove Adobe Creative Cloud
    • Reset Network
    • Reset Windows Update
    • Set Up Autologin
    • System Corruption Scan
    • WinGet Reinstall
    "},{"location":"devdocs/#features_1","title":"Features","text":"
    • All .Net Framework (2,3,4)
    • Disable Legacy F8 Boot Recovery
    • Disable Search Box Web Suggestions in Registry(explorer restart)
    • Enable Daily Registry Backup Task 12.30am
    • Enable Legacy F8 Boot Recovery
    • Enable Search Box Web Suggestions in Registry(explorer restart)
    • HyperV Virtualization
    • Install Features
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Windows Sandbox
    • Windows Subsystem for Linux
    "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
    "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
    "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
    "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
    "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    "},{"location":"userguide/#dns","title":"DNS","text":"

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.
    "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

    "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
    "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
    "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
    • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox
    "},{"location":"userguide/#fixes","title":"Fixes","text":"
    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud
    "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"userguide/#updates","title":"Updates","text":"

    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    "},{"location":"userguide/#microwin","title":"MicroWin","text":"
    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
    "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    "},{"location":"userguide/#options","title":"Options","text":"
    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    "},{"location":"userguide/#customization-options","title":"Customization options","text":"
    • Keep Provisioned Packages: leaving this option unticked (default) will try to remove every operating system package.

    Some packages may remain after processing. This can happen if the packages in question are permanent or have been superseded by newer versions.

    • Keep Appx Packages: leaving this option unticked (default) will try to remove every Microsoft Store app from the Windows image.

    This option will exclude some applications that are essential in the event that you want or need to add a Store app later on.

    • Keep Defender: leaving this option unticked will try to remove every part of Windows Defender, including the Windows Security app.

    Leaving this option unticked is NOT recommended unless you plan to use a third-party antivirus solution on your MicroWin installation. In that regard, don't install AVs with bad reputations or rogueware.

    • Keep Edge: leaving this option unticked will try to remove every part of the Microsoft Edge browser using the best methods available.

    Leaving this option unticked is not recommended because it might break some applications that might depend on the Edge WebView2 runtime. However, if that happens, you can easily reinstall it

    "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    "},{"location":"userguide/#automation","title":"Automation","text":"
    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
    • Have a cup of coffee! Come back when it's done.
    "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

    Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

    Disables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

    Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

    Enables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
    "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
    function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

    Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

    Preview Code
    {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
    "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
          New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

    View the JSON file

    "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

    Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

    Preview Code
    {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

    .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

    Preview Code
    {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
    "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

    Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

    Preview Code
    {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
    "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
    • HypervisorPlatform
    • Microsoft-Hyper-V-All
    • Microsoft-Hyper-V
    • Microsoft-Hyper-V-Tools-All
    • Microsoft-Hyper-V-Management-PowerShell
    • Microsoft-Hyper-V-Hypervisor
    • Microsoft-Hyper-V-Services
    • Microsoft-Hyper-V-Management-Clients
    "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
    Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

    Enables legacy programs from previous versions of windows

    Preview Code
    {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
    "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

    Network File System (NFS) is a mechanism for storing files on a network.

    Preview Code
    {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
    "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
    • ServicesForNFS-ClientOnly
    • ClientForNFS-Infrastructure
    • NFS-Administration
    "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
    nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

    View the JSON file

    "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

    Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

    Preview Code
    {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
    "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
    "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
    function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
    "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
    function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
    "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
    function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
    function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
    "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
    function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
    "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
    function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

    If enable then includes web search results from Bing in your Start Menu search.

    Preview Code
    {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
    function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

    Enable/Disable Dark Mode.

    Preview Code
    {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
    Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

    If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

    Preview Code
    {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
    Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

    If Enabled then Hidden Files will be shown.

    Preview Code
    {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
    function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

    If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

    Preview Code
    {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
    Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

    Toggle the Num Lock key state when your computer starts.

    Preview Code
    {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
    function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

    If enabled then File extensions (e.g., .txt, .jpg) are visible.

    Preview Code
    {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
    function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

    If enabled then Snap preview is disabled when maximize button is hovered.

    Preview Code
    {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
    function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

    If enabled then you will get suggestions to snap other applications in the left over spaces.

    Preview Code
    {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
    function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

    If enabled you can align windows by dragging them. | Relogin Required

    Preview Code
    {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
    function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

    If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

    Preview Code
    {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
    Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

    If Enabled then Task View Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
    function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

    [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

    Preview Code
    {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
    function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

    If Enabled Search Button will be on the taskbar.

    Preview Code
    {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
    function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

    If Enabled then Widgets Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
    function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

    Show detailed messages during the login process for troubleshooting and diagnostics.

    Preview Code
    {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
    function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

    This erases recent docs, clipboard, and run history.

    Preview Code
    {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

    Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

    Preview Code
    {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

    GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

    Preview Code
    {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

    Erases TEMP Folders

    Preview Code
    {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
    Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

    Runs Disk Cleanup on Drive C: and removes old Windows Updates.

    Preview Code
    {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
          cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

    Disables various telemetry options, popups, and other annoyances in Edge.

    Preview Code
    {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

    Enables option to end task when right clicking a program in the taskbar

    Preview Code
    {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

    Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

    Preview Code
    {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
    powercfg.exe /hibernate off\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
    powercfg.exe /hibernate on\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

    Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

    Preview Code
    {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

    Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

    Preview Code
    {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
          Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

    Disables Location Tracking...DUH!

    Preview Code
    {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

    Type: String

    Original Value: Allow

    New Value: Deny

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

    This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

    Preview Code
    {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
    Invoke-WPFTweakPS7 -action \"PS7\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
    Invoke-WPFTweakPS7 -action \"PS5\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
    function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
    Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
    function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
    function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

    This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

    Preview Code
    {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

    Creates a restore point at runtime in case a revert is needed from WinUtil modifications

    Preview Code
    {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
            # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

    Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

    Preview Code
    {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

    Startup Type: Manual

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

    Storage Sense deletes temp files automatically.

    Preview Code
    {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

    Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

    Preview Code
    {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
          bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

    Type: String

    Original Value: 400

    New Value: 400

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

    Type: DWord

    Original Value: 20

    New Value: 30

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

    State: Disabled

    Original State: Enabled

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/","title":"Disable Teredo","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#description","title":"Description","text":"

    Teredo network tunneling is a ipv6 feature that can cause additional latency.

    Preview Code
    {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Teredo\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#invoke-script","title":"Invoke Script","text":"
    netsh interface teredo set state disabled\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#undo-script","title":"Undo Script","text":"
    netsh interface teredo set state default\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

    Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

    Preview Code
    {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
    "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
    function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

    Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

    Preview Code
    {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
          # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
          # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

    USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

    Preview Code
    {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
            $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

    Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

    Preview Code
    {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
          function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
          function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

    Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

    Preview Code
    {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

    Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

    Preview Code
    {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

    Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

    Preview Code
    {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
            Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
          Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

    Disables all Notifications INCLUDING Calendar

    Preview Code
    {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

    Disables IPv6.

    Preview Code
    {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
    Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
    Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

    Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

    Preview Code
    {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
    Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: String

    Original Value: 1

    New Value: 200

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

    Type: DWord

    Original Value: 1

    New Value: 3

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
    function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

    Disables MS Copilot AI built into Windows since 23H2.

    Preview Code
    {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

    Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

    Preview Code
    {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
             Uninstall-WinUtilEdgeBrowser\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
    Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

    Removes the Home and Gallery from explorer and sets This PC as default

    Preview Code
    {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
          REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
          REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

    Moves OneDrive files to Default Home Folders and Uninstalls it.

    Preview Code
    {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
          $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

    Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

    Preview Code
    {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
          New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
          Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

    Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

    Preview Code
    {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
    function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
    function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

    View the JSON file

    "}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

    Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

    "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
    • You will first need to start a Powershell terminal as Admin.
    • Now you can run the following command:
      irm christitus.com/win | iex\n

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
    • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
    • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

    If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

    Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
    • Script doesn't run/PowerShell crashes:
    • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
    • Run:
      Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
    • Run:
      irm christitus.com/win | iex\n
    "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
    • Windows taking longer to shut down:
    • #69 Turn on fast startup: Press Windows key + R, then type:
      control /name Microsoft.PowerOptions /page pageGlobalSettings\n
    • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
      powercfg /H off\n
    • #69 95 #232 Windows Search does not work: Enable Background Apps
    • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

      Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

    • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

    • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

    • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

    "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
    • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

    • Check Battery Health:

    • Open a Command Prompt as an administrator.
    • Run the following command to generate a battery report:
      powercfg /batteryreport /output \"C:\\battery_report.html\"\n
    • Open the generated HTML report to review information about battery health and usage.

    • Review Power Settings:

    • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
    • Adjust power plan settings based on your preferences and usage patterns.
    • Click on \"Additional power settings\" to access advanced power settings.

    • Identify Power-Hungry Apps:

    • Right-click on the taskbar and select \"Task Manager.\"
    • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
    • Consider closing unnecessary background applications.

    • Update Drivers:

    • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
    • Ensure graphics, chipset, and other essential drivers are up to date.

    • Check for Windows Updates:

    • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
    • Check for and install any available updates for your operating system.

    • Reduce Screen Brightness:

    • Adjust screen brightness based on your preferences and lighting conditions.
    • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

    • Battery Saver Mode:

    • Go to \"Settings\" > \"System\" > \"Battery.\"
    • Turn on \"Battery saver\" to limit background activity and conserve power.

    • Check Power Usage in Settings:

    • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
    • Review the list of apps and their power usage.

    • Check Background Apps:

    • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
    • Disable unnecessary apps running in the background.

    • Use Powercfg for Analysis:

      • Open a Command Prompt as an administrator.
      • Run the following command to analyze energy usage and generate a report:
        powercfg /energy /output \"C:\\energy_report.html\"\n
      • Open the generated HTML report to identify energy consumption patterns.
    • Review Event Viewer:

      • Open Event Viewer by searching for it in the Start menu.
      • Navigate to \"Windows Logs\" > \"System.\"
      • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
    • Check Wake-up Sources:

      • Open a Command Prompt as an administrator.
      • Use the command powercfg /requests to identify processes preventing sleep.
      • Check Task Scheduler for tasks waking up the computer.
      • Use the command powercfg /waketimers to view active wake timers.
    • Resource Monitor:

      • Open Resource Monitor from the Start menu.
      • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
    • Windows Settings - Activity History:

      • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
      • Turn off \"Let Windows collect my activities from this PC.\"
    • Network Adapters:

      • Open Device Manager by searching for it in the Start menu.
      • Locate your network adapter, right-click, and go to \"Properties.\"
      • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
    • Review Installed Applications:

      • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
      • Check settings/preferences of individual applications for power-related options.
      • Uninstall unnecessary or problematic software.
    • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

    "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
    • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

    • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

    • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

      sfc /scannow\n

    • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

    • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

    • Press Win + R to open the Run dialog.
    • Type services.msc and press Enter.
    • Locate \"Windows Management Instrumentation\" in the list.
    • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

    • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

    • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

    • Press Win + X and select \"Event Viewer.\"

    • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
    • Look for entries with the source related to WMI or the application use to mount the ISO.

    • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

    • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

    "},{"location":"contribute/","title":"How to Contribute?","text":""},{"location":"contribute/#testing","title":"Testing","text":"
    • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!
    "},{"location":"contribute/#run-the-latest-pre-release","title":"Run the latest pre-release","text":"
    irm christitus.com/windev | iex\n

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    "},{"location":"contribute/#issues","title":"Issues","text":"
    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the \"Issues\" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
    "},{"location":"contribute/#contribute-code","title":"Contribute Code","text":"
    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include \"WPF\" or \"WinUtil\" in the file name so it can be loaded into the runspace.

    "},{"location":"contribute/#walk-through","title":"Walk through","text":"
    • This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
      • Commit through WEB
      • Commit through GitHub Desktop
      • Create a Pull Request
    "},{"location":"contribute/#overview","title":"Overview","text":"
    %%{init: {\"flowchart\": {\"curve\": \"cardinal\"}} }%%\ngraph TD\n\u00a0 A[Fork Project] --> B[Clone Repository];\n\u00a0 B --> C[Create New Branch];\n\u00a0 C --> D[Make Changes];\n\u00a0 D --> G[Test Changes];\n\u00a0 G --> H{Tests Passed?};\n\u00a0 H -->|Yes| E[Commit Changes];\n\u00a0 H -->|No| J[Fix Issues];\n\u00a0 J --> G;\n\u00a0 E --> F[Push Branch];\n\u00a0 F --> K[Create Pull Request];\n\u00a0 K --> L[Fill out PR template];\n  classDef default stroke:#333,stroke-width:4px,font-size:12pt;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    "},{"location":"contribute/#fork-the-repo","title":"Fork the Repo","text":"
    • Fork the WinUtil Repository here to create a copy that will be available in your repository list.
    "},{"location":"contribute/#clone-the-fork","title":"Clone the Fork","text":"

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under \"Your Repositories\" and press \"clone {repo name}\"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    "},{"location":"contribute/#testing-your-changes","title":"Testing your changes","text":"
    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\\Compile.ps1 -run

    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
    "},{"location":"contribute/#committing-the-changes","title":"Committing the changes","text":"
    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:
    • Now, commit your changes once you are happy with the result.
    • Push the changes to upload them to your fork on github.com.
    "},{"location":"contribute/#making-a-pr","title":"Making a PR","text":"
    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the \"/windev\" build.
    • If you do not see your feature in the main \"/win\" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
    • Adobe Debloat
    • Adobe Network Block
    • Disable Background Apps
    • Disable Fullscreen Optimizations
    • Disable Intel MM (vPro LMS)
    • Disable IPv6
    • Disable Microsoft Copilot
    • Disable Notification Tray/Calendar
    • DNS
    • Remove ALL MS Store Apps - NOT RECOMMENDED
    • Remove Home and Gallery from explorer
    • Remove Microsoft Edge
    • Remove OneDrive
    • Run OO Shutup 10
    • Run Tweaks
    • Set Classic Right-Click Menu
    • Set Display for Performance
    • Set Time to UTC (Dual Boot)
    • Undo Selected Tweaks
    "},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
    • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
    • Create Restore Point
    • Debloat Edge
    • Delete Temporary Files
    • Disable Activity History
    • Disable ConsumerFeatures
    • Disable GameDVR
    • Disable Hibernation
    • Disable Homegroup
    • Disable Location Tracking
    • Disable Powershell 7 Telemetry
    • Disable Storage Sense
    • Disable Telemetry
    • Disable Teredo
    • Disable Wifi-Sense
    • Enable End Task With Right Click
    • Run Disk Cleanup
    • Set Hibernation as default (good for laptops)
    • Set Services to Manual
    "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
    • Create WinUtil Shortcut
    "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
    • Bing Search in Start Menu
    • Center Taskbar Items
    • Dark Theme for Windows
    • Detailed BSoD
    • Mouse Acceleration
    • NumLock on Startup
    • Search Button in Taskbar
    • Show File Extensions
    • Show Hidden Files
    • Snap Assist Flyout
    • Snap Assist Suggestion
    • Snap Window
    • Sticky Keys
    • Task View Button in Taskbar
    • Verbose Messages During Logon
    • Widgets Button in Taskbar
    "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
    • Add and Activate Ultimate Performance Profile
    • Remove Ultimate Performance Profile
    "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"devdocs/#fixes","title":"Fixes","text":"
    • Remove Adobe Creative Cloud
    • Reset Network
    • Reset Windows Update
    • Set Up Autologin
    • System Corruption Scan
    • WinGet Reinstall
    "},{"location":"devdocs/#features_1","title":"Features","text":"
    • All .Net Framework (2,3,4)
    • Disable Legacy F8 Boot Recovery
    • Disable Search Box Web Suggestions in Registry(explorer restart)
    • Enable Daily Registry Backup Task 12.30am
    • Enable Legacy F8 Boot Recovery
    • Enable Search Box Web Suggestions in Registry(explorer restart)
    • HyperV Virtualization
    • Install Features
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Windows Sandbox
    • Windows Subsystem for Linux
    "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
    "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
    "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
    "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
    "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    "},{"location":"userguide/#dns","title":"DNS","text":"

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.
    "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

    "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
    "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
    "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
    • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox
    "},{"location":"userguide/#fixes","title":"Fixes","text":"
    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud
    "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"userguide/#updates","title":"Updates","text":"

    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    "},{"location":"userguide/#microwin","title":"MicroWin","text":"
    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
    "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    "},{"location":"userguide/#options","title":"Options","text":"
    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    "},{"location":"userguide/#customization-options","title":"Customization options","text":"
    • Keep Provisioned Packages: leaving this option unticked (default) will try to remove every operating system package.

    Some packages may remain after processing. This can happen if the packages in question are permanent or have been superseded by newer versions.

    • Keep Appx Packages: leaving this option unticked (default) will try to remove every Microsoft Store app from the Windows image.

    This option will exclude some applications that are essential in the event that you want or need to add a Store app later on.

    • Keep Defender: leaving this option unticked will try to remove every part of Windows Defender, including the Windows Security app.

    Leaving this option unticked is NOT recommended unless you plan to use a third-party antivirus solution on your MicroWin installation. In that regard, don't install AVs with bad reputations or rogueware.

    • Keep Edge: leaving this option unticked will try to remove every part of the Microsoft Edge browser using the best methods available.

    Leaving this option unticked is not recommended because it might break some applications that might depend on the Edge WebView2 runtime. However, if that happens, you can easily reinstall it

    "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    "},{"location":"userguide/#automation","title":"Automation","text":"
    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
    • Have a cup of coffee! Come back when it's done.
    "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

    Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

    Disables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

    Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

    Enables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
    "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
    function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

    Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

    Preview Code
    {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
    "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
          New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

    View the JSON file

    "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

    Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

    Preview Code
    {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

    .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

    Preview Code
    {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
    "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

    Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

    Preview Code
    {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
    "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
    • HypervisorPlatform
    • Microsoft-Hyper-V-All
    • Microsoft-Hyper-V
    • Microsoft-Hyper-V-Tools-All
    • Microsoft-Hyper-V-Management-PowerShell
    • Microsoft-Hyper-V-Hypervisor
    • Microsoft-Hyper-V-Services
    • Microsoft-Hyper-V-Management-Clients
    "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
    Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

    Enables legacy programs from previous versions of windows

    Preview Code
    {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
    "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

    Network File System (NFS) is a mechanism for storing files on a network.

    Preview Code
    {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
    "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
    • ServicesForNFS-ClientOnly
    • ClientForNFS-Infrastructure
    • NFS-Administration
    "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
    nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

    View the JSON file

    "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

    Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

    Preview Code
    {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
    "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
    "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
    function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
    "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
    function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
    "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
    function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
    function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
    "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
    function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
    "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
    function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

    If enable then includes web search results from Bing in your Start Menu search.

    Preview Code
    {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
    function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

    Enable/Disable Dark Mode.

    Preview Code
    {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
    Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

    If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

    Preview Code
    {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
    Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

    If Enabled then Hidden Files will be shown.

    Preview Code
    {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
    function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

    If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

    Preview Code
    {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
    Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

    Toggle the Num Lock key state when your computer starts.

    Preview Code
    {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
    function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

    If enabled then File extensions (e.g., .txt, .jpg) are visible.

    Preview Code
    {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
    function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

    If enabled then Snap preview is disabled when maximize button is hovered.

    Preview Code
    {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
    function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

    If enabled then you will get suggestions to snap other applications in the left over spaces.

    Preview Code
    {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
    function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

    If enabled you can align windows by dragging them. | Relogin Required

    Preview Code
    {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
    function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

    If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

    Preview Code
    {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
    Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

    If Enabled then Task View Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
    function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

    [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

    Preview Code
    {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
    function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

    If Enabled Search Button will be on the taskbar.

    Preview Code
    {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
    function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

    If Enabled then Widgets Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
    function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

    Show detailed messages during the login process for troubleshooting and diagnostics.

    Preview Code
    {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
    function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

    This erases recent docs, clipboard, and run history.

    Preview Code
    {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

    Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

    Preview Code
    {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

    GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

    Preview Code
    {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

    Erases TEMP Folders

    Preview Code
    {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
    Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

    Runs Disk Cleanup on Drive C: and removes old Windows Updates.

    Preview Code
    {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
          cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

    Disables various telemetry options, popups, and other annoyances in Edge.

    Preview Code
    {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

    Enables option to end task when right clicking a program in the taskbar

    Preview Code
    {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

    Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

    Preview Code
    {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
    powercfg.exe /hibernate off\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
    powercfg.exe /hibernate on\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

    Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

    Preview Code
    {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

    Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

    Preview Code
    {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
          Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

    Disables Location Tracking...DUH!

    Preview Code
    {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

    Type: String

    Original Value: Allow

    New Value: Deny

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

    This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

    Preview Code
    {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
    Invoke-WPFTweakPS7 -action \"PS7\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
    Invoke-WPFTweakPS7 -action \"PS5\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
    function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
    Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
    function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
    function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

    This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

    Preview Code
    {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

    Creates a restore point at runtime in case a revert is needed from WinUtil modifications

    Preview Code
    {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
            # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

    Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

    Preview Code
    {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

    Startup Type: Manual

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

    Storage Sense deletes temp files automatically.

    Preview Code
    {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

    Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

    Preview Code
    {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
          bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

    Type: String

    Original Value: 400

    New Value: 400

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

    Type: DWord

    Original Value: 20

    New Value: 30

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

    State: Disabled

    Original State: Enabled

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/","title":"Disable Teredo","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#description","title":"Description","text":"

    Teredo network tunneling is a ipv6 feature that can cause additional latency.

    Preview Code
    {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Teredo\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#invoke-script","title":"Invoke Script","text":"
    netsh interface teredo set state disabled\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#undo-script","title":"Undo Script","text":"
    netsh interface teredo set state default\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

    Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

    Preview Code
    {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
    "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
    function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

    Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

    Preview Code
    {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
          # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
          # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

    USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

    Preview Code
    {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
            $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

    Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

    Preview Code
    {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
          function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
          function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

    Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

    Preview Code
    {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

    Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

    Preview Code
    {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

    Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

    Preview Code
    {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
            Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
          Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

    Disables all Notifications INCLUDING Calendar

    Preview Code
    {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

    Disables IPv6.

    Preview Code
    {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
    Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
    Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

    Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

    Preview Code
    {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
    Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: String

    Original Value: 1

    New Value: 200

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

    Type: DWord

    Original Value: 1

    New Value: 3

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
    function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

    Disables MS Copilot AI built into Windows since 23H2.

    Preview Code
    {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

    Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

    Preview Code
    {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
             Uninstall-WinUtilEdgeBrowser\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
    Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

    Removes the Home and Gallery from explorer and sets This PC as default

    Preview Code
    {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
          REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
          REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

    Moves OneDrive files to Default Home Folders and Uninstalls it.

    Preview Code
    {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
          $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

    Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

    Preview Code
    {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
          New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
          Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

    Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

    Preview Code
    {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
    function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
    function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

    View the JSON file

    "}]} \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz index c19f318b38383187906fa5639d4c12ded7c5cc34..09e4dd4e0e475033c3ac6060f3196eb44e540181 100644 GIT binary patch delta 13 Ucmb=gXP58h;9!W^I+48s02(U;;Q#;t delta 13 Ucmb=gXP58h;Ar65GLgLk02_@24gdfE diff --git a/userguide/index.html b/userguide/index.html index a5f406724..911caef2f 100644 --- a/userguide/index.html +++ b/userguide/index.html @@ -1,2 +1,2 @@ User Guide - WinUtil Documentation

    Walkthrough

    Install


    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Install Image Install Image

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    Tweaks


    Tweaks Image Tweaks Image

    Run Tweaks

    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.

    Undo Tweaks

    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.

    Essential Tweaks

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    Advanced Tweaks - CAUTION

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    O&O Shutup

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    DNS

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.

    Customize Preferences

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user’s specific needs and preferences.

    Performance Plans

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    Add and activate the Ultimate Performance Profile:

    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.

    Remove Ultimate Performance Profile:

    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.

    Shortcuts

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    Config


    Features

    • Install the most used Windows Features by checking the checkbox and clicking "Install Features" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox

    Fixes

    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud

    Legacy Windows Panels

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts

    Updates


    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    Default (Out of Box) Settings

    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    MicroWin


    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.

    Microwin Microwin

    Basic usage

    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    Options

    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    Customization options
    • Keep Provisioned Packages: leaving this option unticked (default) will try to remove every operating system package.

    Some packages may remain after processing. This can happen if the packages in question are permanent or have been superseded by newer versions.

    • Keep Appx Packages: leaving this option unticked (default) will try to remove every Microsoft Store app from the Windows image.

    This option will exclude some applications that are essential in the event that you want or need to add a Store app later on.

    • Keep Defender: leaving this option unticked will try to remove every part of Windows Defender, including the Windows Security app.

    Leaving this option unticked is NOT recommended unless you plan to use a third-party antivirus solution on your MicroWin installation. In that regard, don't install AVs with bad reputations or rogueware.

    • Keep Edge: leaving this option unticked will try to remove every part of the Microsoft Edge browser using the best methods available.

    Leaving this option unticked is not recommended because it might break some applications that might depend on the Edge WebView2 runtime. However, if that happens, you can easily reinstall it

    Driver integration options
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    Ventoy options
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    Automation

    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click "Get Installed", this will get all installed apps supported by Winutil on the system. GetInstalled GetInstalled

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file. SettingsExport SettingsExport

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex "& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run"
      -
    • Have a cup of coffee! Come back when it's done.
    \ No newline at end of file +
  • Have a cup of coffee! Come back when it's done.
  • \ No newline at end of file From 3ff6f0c9dc406d373d2d2fb623470f9c14098e3e Mon Sep 17 00:00:00 2001 From: <> Date: Wed, 14 Aug 2024 15:59:37 +0000 Subject: [PATCH 03/10] Deployed d0fa506 with MkDocs version: 1.6.0 --- contribute/index.html | 16 +--------------- search/search_index.json | 2 +- sitemap.xml.gz | Bin 127 -> 127 bytes 3 files changed, 2 insertions(+), 16 deletions(-) diff --git a/contribute/index.html b/contribute/index.html index 8354fb1a6..61e865eb3 100644 --- a/contribute/index.html +++ b/contribute/index.html @@ -1,15 +1 @@ - Contributing Guide - WinUtil Documentation

    How to Contribute?

    Testing

    • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!

    Run the latest pre-release

    irm christitus.com/windev | iex
    -

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    Issues

    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the "Issues" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.

    Contribute Code

    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include "WPF" or "WinUtil" in the file name so it can be loaded into the runspace.

    Walk through

    Overview

    %%{init: {"flowchart": {"curve": "cardinal"}} }%%
    -graph TD
    -  A[Fork Project] --> B[Clone Repository];
    -  B --> C[Create New Branch];
    -  C --> D[Make Changes];
    -  D --> G[Test Changes];
    -  G --> H{Tests Passed?};
    -  H -->|Yes| E[Commit Changes];
    -  H -->|No| J[Fix Issues];
    -  J --> G;
    -  E --> F[Push Branch];
    -  F --> K[Create Pull Request];
    -  K --> L[Fill out PR template];
    -  classDef default stroke:#333,stroke-width:4px,font-size:12pt;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    Fork the Repo

    • Fork the WinUtil Repository here to create a copy that will be available in your repository list.

    Fork Image

    Fork Image

    Clone the Fork

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under "Your Repositories" and press "clone {repo name}"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    Testing your changes

    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\Compile.ps1 -run

    Compile

    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.

    Committing the changes

    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:

    Push Commit Image

    • Now, commit your changes once you are happy with the result.

    Commit Image

    • Push the changes to upload them to your fork on github.com.

    Push Commit Image

    Making a PR

    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the "/windev" build.
    • If you do not see your feature in the main "/win" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    \ No newline at end of file + Contributing Guide - WinUtil Documentation

    Contributing Guide

    \ No newline at end of file diff --git a/search/search_index.json b/search/search_index.json index 248ec2606..291d20ad0 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

    Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

    "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
    • You will first need to start a Powershell terminal as Admin.
    • Now you can run the following command:
      irm christitus.com/win | iex\n

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
    • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
    • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

    If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

    Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
    • Script doesn't run/PowerShell crashes:
    • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
    • Run:
      Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
    • Run:
      irm christitus.com/win | iex\n
    "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
    • Windows taking longer to shut down:
    • #69 Turn on fast startup: Press Windows key + R, then type:
      control /name Microsoft.PowerOptions /page pageGlobalSettings\n
    • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
      powercfg /H off\n
    • #69 95 #232 Windows Search does not work: Enable Background Apps
    • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

      Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

    • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

    • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

    • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

    "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
    • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

    • Check Battery Health:

    • Open a Command Prompt as an administrator.
    • Run the following command to generate a battery report:
      powercfg /batteryreport /output \"C:\\battery_report.html\"\n
    • Open the generated HTML report to review information about battery health and usage.

    • Review Power Settings:

    • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
    • Adjust power plan settings based on your preferences and usage patterns.
    • Click on \"Additional power settings\" to access advanced power settings.

    • Identify Power-Hungry Apps:

    • Right-click on the taskbar and select \"Task Manager.\"
    • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
    • Consider closing unnecessary background applications.

    • Update Drivers:

    • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
    • Ensure graphics, chipset, and other essential drivers are up to date.

    • Check for Windows Updates:

    • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
    • Check for and install any available updates for your operating system.

    • Reduce Screen Brightness:

    • Adjust screen brightness based on your preferences and lighting conditions.
    • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

    • Battery Saver Mode:

    • Go to \"Settings\" > \"System\" > \"Battery.\"
    • Turn on \"Battery saver\" to limit background activity and conserve power.

    • Check Power Usage in Settings:

    • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
    • Review the list of apps and their power usage.

    • Check Background Apps:

    • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
    • Disable unnecessary apps running in the background.

    • Use Powercfg for Analysis:

      • Open a Command Prompt as an administrator.
      • Run the following command to analyze energy usage and generate a report:
        powercfg /energy /output \"C:\\energy_report.html\"\n
      • Open the generated HTML report to identify energy consumption patterns.
    • Review Event Viewer:

      • Open Event Viewer by searching for it in the Start menu.
      • Navigate to \"Windows Logs\" > \"System.\"
      • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
    • Check Wake-up Sources:

      • Open a Command Prompt as an administrator.
      • Use the command powercfg /requests to identify processes preventing sleep.
      • Check Task Scheduler for tasks waking up the computer.
      • Use the command powercfg /waketimers to view active wake timers.
    • Resource Monitor:

      • Open Resource Monitor from the Start menu.
      • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
    • Windows Settings - Activity History:

      • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
      • Turn off \"Let Windows collect my activities from this PC.\"
    • Network Adapters:

      • Open Device Manager by searching for it in the Start menu.
      • Locate your network adapter, right-click, and go to \"Properties.\"
      • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
    • Review Installed Applications:

      • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
      • Check settings/preferences of individual applications for power-related options.
      • Uninstall unnecessary or problematic software.
    • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

    "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
    • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

    • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

    • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

      sfc /scannow\n

    • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

    • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

    • Press Win + R to open the Run dialog.
    • Type services.msc and press Enter.
    • Locate \"Windows Management Instrumentation\" in the list.
    • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

    • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

    • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

    • Press Win + X and select \"Event Viewer.\"

    • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
    • Look for entries with the source related to WMI or the application use to mount the ISO.

    • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

    • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

    "},{"location":"contribute/","title":"How to Contribute?","text":""},{"location":"contribute/#testing","title":"Testing","text":"
    • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!
    "},{"location":"contribute/#run-the-latest-pre-release","title":"Run the latest pre-release","text":"
    irm christitus.com/windev | iex\n

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    "},{"location":"contribute/#issues","title":"Issues","text":"
    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the \"Issues\" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
    "},{"location":"contribute/#contribute-code","title":"Contribute Code","text":"
    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include \"WPF\" or \"WinUtil\" in the file name so it can be loaded into the runspace.

    "},{"location":"contribute/#walk-through","title":"Walk through","text":"
    • This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
      • Commit through WEB
      • Commit through GitHub Desktop
      • Create a Pull Request
    "},{"location":"contribute/#overview","title":"Overview","text":"
    %%{init: {\"flowchart\": {\"curve\": \"cardinal\"}} }%%\ngraph TD\n\u00a0 A[Fork Project] --> B[Clone Repository];\n\u00a0 B --> C[Create New Branch];\n\u00a0 C --> D[Make Changes];\n\u00a0 D --> G[Test Changes];\n\u00a0 G --> H{Tests Passed?};\n\u00a0 H -->|Yes| E[Commit Changes];\n\u00a0 H -->|No| J[Fix Issues];\n\u00a0 J --> G;\n\u00a0 E --> F[Push Branch];\n\u00a0 F --> K[Create Pull Request];\n\u00a0 K --> L[Fill out PR template];\n  classDef default stroke:#333,stroke-width:4px,font-size:12pt;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    "},{"location":"contribute/#fork-the-repo","title":"Fork the Repo","text":"
    • Fork the WinUtil Repository here to create a copy that will be available in your repository list.
    "},{"location":"contribute/#clone-the-fork","title":"Clone the Fork","text":"

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under \"Your Repositories\" and press \"clone {repo name}\"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    "},{"location":"contribute/#testing-your-changes","title":"Testing your changes","text":"
    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\\Compile.ps1 -run

    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
    "},{"location":"contribute/#committing-the-changes","title":"Committing the changes","text":"
    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:
    • Now, commit your changes once you are happy with the result.
    • Push the changes to upload them to your fork on github.com.
    "},{"location":"contribute/#making-a-pr","title":"Making a PR","text":"
    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the \"/windev\" build.
    • If you do not see your feature in the main \"/win\" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
    • Adobe Debloat
    • Adobe Network Block
    • Disable Background Apps
    • Disable Fullscreen Optimizations
    • Disable Intel MM (vPro LMS)
    • Disable IPv6
    • Disable Microsoft Copilot
    • Disable Notification Tray/Calendar
    • DNS
    • Remove ALL MS Store Apps - NOT RECOMMENDED
    • Remove Home and Gallery from explorer
    • Remove Microsoft Edge
    • Remove OneDrive
    • Run OO Shutup 10
    • Run Tweaks
    • Set Classic Right-Click Menu
    • Set Display for Performance
    • Set Time to UTC (Dual Boot)
    • Undo Selected Tweaks
    "},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
    • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
    • Create Restore Point
    • Debloat Edge
    • Delete Temporary Files
    • Disable Activity History
    • Disable ConsumerFeatures
    • Disable GameDVR
    • Disable Hibernation
    • Disable Homegroup
    • Disable Location Tracking
    • Disable Powershell 7 Telemetry
    • Disable Storage Sense
    • Disable Telemetry
    • Disable Teredo
    • Disable Wifi-Sense
    • Enable End Task With Right Click
    • Run Disk Cleanup
    • Set Hibernation as default (good for laptops)
    • Set Services to Manual
    "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
    • Create WinUtil Shortcut
    "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
    • Bing Search in Start Menu
    • Center Taskbar Items
    • Dark Theme for Windows
    • Detailed BSoD
    • Mouse Acceleration
    • NumLock on Startup
    • Search Button in Taskbar
    • Show File Extensions
    • Show Hidden Files
    • Snap Assist Flyout
    • Snap Assist Suggestion
    • Snap Window
    • Sticky Keys
    • Task View Button in Taskbar
    • Verbose Messages During Logon
    • Widgets Button in Taskbar
    "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
    • Add and Activate Ultimate Performance Profile
    • Remove Ultimate Performance Profile
    "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"devdocs/#fixes","title":"Fixes","text":"
    • Remove Adobe Creative Cloud
    • Reset Network
    • Reset Windows Update
    • Set Up Autologin
    • System Corruption Scan
    • WinGet Reinstall
    "},{"location":"devdocs/#features_1","title":"Features","text":"
    • All .Net Framework (2,3,4)
    • Disable Legacy F8 Boot Recovery
    • Disable Search Box Web Suggestions in Registry(explorer restart)
    • Enable Daily Registry Backup Task 12.30am
    • Enable Legacy F8 Boot Recovery
    • Enable Search Box Web Suggestions in Registry(explorer restart)
    • HyperV Virtualization
    • Install Features
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Windows Sandbox
    • Windows Subsystem for Linux
    "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
    "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
    "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
    "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
    "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    "},{"location":"userguide/#dns","title":"DNS","text":"

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.
    "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

    "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
    "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
    "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
    • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox
    "},{"location":"userguide/#fixes","title":"Fixes","text":"
    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud
    "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"userguide/#updates","title":"Updates","text":"

    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    "},{"location":"userguide/#microwin","title":"MicroWin","text":"
    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
    "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    "},{"location":"userguide/#options","title":"Options","text":"
    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    "},{"location":"userguide/#customization-options","title":"Customization options","text":"
    • Keep Provisioned Packages: leaving this option unticked (default) will try to remove every operating system package.

    Some packages may remain after processing. This can happen if the packages in question are permanent or have been superseded by newer versions.

    • Keep Appx Packages: leaving this option unticked (default) will try to remove every Microsoft Store app from the Windows image.

    This option will exclude some applications that are essential in the event that you want or need to add a Store app later on.

    • Keep Defender: leaving this option unticked will try to remove every part of Windows Defender, including the Windows Security app.

    Leaving this option unticked is NOT recommended unless you plan to use a third-party antivirus solution on your MicroWin installation. In that regard, don't install AVs with bad reputations or rogueware.

    • Keep Edge: leaving this option unticked will try to remove every part of the Microsoft Edge browser using the best methods available.

    Leaving this option unticked is not recommended because it might break some applications that might depend on the Edge WebView2 runtime. However, if that happens, you can easily reinstall it

    "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    "},{"location":"userguide/#automation","title":"Automation","text":"
    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
    • Have a cup of coffee! Come back when it's done.
    "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

    Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

    Disables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

    Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

    Enables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
    "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
    function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

    Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

    Preview Code
    {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
    "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
          New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

    View the JSON file

    "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

    Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

    Preview Code
    {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

    .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

    Preview Code
    {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
    "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

    Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

    Preview Code
    {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
    "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
    • HypervisorPlatform
    • Microsoft-Hyper-V-All
    • Microsoft-Hyper-V
    • Microsoft-Hyper-V-Tools-All
    • Microsoft-Hyper-V-Management-PowerShell
    • Microsoft-Hyper-V-Hypervisor
    • Microsoft-Hyper-V-Services
    • Microsoft-Hyper-V-Management-Clients
    "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
    Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

    Enables legacy programs from previous versions of windows

    Preview Code
    {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
    "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

    Network File System (NFS) is a mechanism for storing files on a network.

    Preview Code
    {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
    "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
    • ServicesForNFS-ClientOnly
    • ClientForNFS-Infrastructure
    • NFS-Administration
    "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
    nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

    View the JSON file

    "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

    Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

    Preview Code
    {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
    "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
    "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
    function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
    "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
    function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
    "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
    function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
    function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
    "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
    function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
    "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
    function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

    If enable then includes web search results from Bing in your Start Menu search.

    Preview Code
    {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
    function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

    Enable/Disable Dark Mode.

    Preview Code
    {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
    Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

    If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

    Preview Code
    {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
    Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

    If Enabled then Hidden Files will be shown.

    Preview Code
    {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
    function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

    If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

    Preview Code
    {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
    Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

    Toggle the Num Lock key state when your computer starts.

    Preview Code
    {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
    function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

    If enabled then File extensions (e.g., .txt, .jpg) are visible.

    Preview Code
    {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
    function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

    If enabled then Snap preview is disabled when maximize button is hovered.

    Preview Code
    {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
    function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

    If enabled then you will get suggestions to snap other applications in the left over spaces.

    Preview Code
    {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
    function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

    If enabled you can align windows by dragging them. | Relogin Required

    Preview Code
    {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
    function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

    If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

    Preview Code
    {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
    Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

    If Enabled then Task View Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
    function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

    [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

    Preview Code
    {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
    function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

    If Enabled Search Button will be on the taskbar.

    Preview Code
    {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
    function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

    If Enabled then Widgets Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
    function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

    Show detailed messages during the login process for troubleshooting and diagnostics.

    Preview Code
    {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
    function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

    This erases recent docs, clipboard, and run history.

    Preview Code
    {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

    Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

    Preview Code
    {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

    GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

    Preview Code
    {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

    Erases TEMP Folders

    Preview Code
    {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
    Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

    Runs Disk Cleanup on Drive C: and removes old Windows Updates.

    Preview Code
    {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
          cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

    Disables various telemetry options, popups, and other annoyances in Edge.

    Preview Code
    {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

    Enables option to end task when right clicking a program in the taskbar

    Preview Code
    {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

    Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

    Preview Code
    {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
    powercfg.exe /hibernate off\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
    powercfg.exe /hibernate on\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

    Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

    Preview Code
    {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

    Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

    Preview Code
    {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
          Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

    Disables Location Tracking...DUH!

    Preview Code
    {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

    Type: String

    Original Value: Allow

    New Value: Deny

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

    This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

    Preview Code
    {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
    Invoke-WPFTweakPS7 -action \"PS7\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
    Invoke-WPFTweakPS7 -action \"PS5\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
    function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
    Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
    function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
    function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

    This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

    Preview Code
    {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

    Creates a restore point at runtime in case a revert is needed from WinUtil modifications

    Preview Code
    {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
            # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

    Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

    Preview Code
    {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

    Startup Type: Manual

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

    Storage Sense deletes temp files automatically.

    Preview Code
    {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

    Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

    Preview Code
    {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
          bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

    Type: String

    Original Value: 400

    New Value: 400

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

    Type: DWord

    Original Value: 20

    New Value: 30

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

    State: Disabled

    Original State: Enabled

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/","title":"Disable Teredo","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#description","title":"Description","text":"

    Teredo network tunneling is a ipv6 feature that can cause additional latency.

    Preview Code
    {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Teredo\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#invoke-script","title":"Invoke Script","text":"
    netsh interface teredo set state disabled\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#undo-script","title":"Undo Script","text":"
    netsh interface teredo set state default\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

    Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

    Preview Code
    {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
    "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
    function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

    Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

    Preview Code
    {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
          # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
          # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

    USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

    Preview Code
    {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
            $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

    Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

    Preview Code
    {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
          function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
          function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

    Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

    Preview Code
    {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

    Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

    Preview Code
    {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

    Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

    Preview Code
    {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
            Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
          Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

    Disables all Notifications INCLUDING Calendar

    Preview Code
    {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

    Disables IPv6.

    Preview Code
    {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
    Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
    Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

    Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

    Preview Code
    {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
    Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: String

    Original Value: 1

    New Value: 200

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

    Type: DWord

    Original Value: 1

    New Value: 3

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
    function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

    Disables MS Copilot AI built into Windows since 23H2.

    Preview Code
    {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

    Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

    Preview Code
    {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
             Uninstall-WinUtilEdgeBrowser\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
    Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

    Removes the Home and Gallery from explorer and sets This PC as default

    Preview Code
    {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
          REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
          REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

    Moves OneDrive files to Default Home Folders and Uninstalls it.

    Preview Code
    {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
          $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

    Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

    Preview Code
    {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
          New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
          Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

    Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

    Preview Code
    {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
    function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
    function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

    View the JSON file

    "}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

    Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

    "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
    • You will first need to start a Powershell terminal as Admin.
    • Now you can run the following command:
      irm christitus.com/win | iex\n

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
    • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
    • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

    If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

    Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
    • Script doesn't run/PowerShell crashes:
    • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
    • Run:
      Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
    • Run:
      irm christitus.com/win | iex\n
    "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
    • Windows taking longer to shut down:
    • #69 Turn on fast startup: Press Windows key + R, then type:
      control /name Microsoft.PowerOptions /page pageGlobalSettings\n
    • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
      powercfg /H off\n
    • #69 95 #232 Windows Search does not work: Enable Background Apps
    • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

      Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

    • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

    • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

    • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

    "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
    • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

    • Check Battery Health:

    • Open a Command Prompt as an administrator.
    • Run the following command to generate a battery report:
      powercfg /batteryreport /output \"C:\\battery_report.html\"\n
    • Open the generated HTML report to review information about battery health and usage.

    • Review Power Settings:

    • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
    • Adjust power plan settings based on your preferences and usage patterns.
    • Click on \"Additional power settings\" to access advanced power settings.

    • Identify Power-Hungry Apps:

    • Right-click on the taskbar and select \"Task Manager.\"
    • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
    • Consider closing unnecessary background applications.

    • Update Drivers:

    • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
    • Ensure graphics, chipset, and other essential drivers are up to date.

    • Check for Windows Updates:

    • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
    • Check for and install any available updates for your operating system.

    • Reduce Screen Brightness:

    • Adjust screen brightness based on your preferences and lighting conditions.
    • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

    • Battery Saver Mode:

    • Go to \"Settings\" > \"System\" > \"Battery.\"
    • Turn on \"Battery saver\" to limit background activity and conserve power.

    • Check Power Usage in Settings:

    • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
    • Review the list of apps and their power usage.

    • Check Background Apps:

    • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
    • Disable unnecessary apps running in the background.

    • Use Powercfg for Analysis:

      • Open a Command Prompt as an administrator.
      • Run the following command to analyze energy usage and generate a report:
        powercfg /energy /output \"C:\\energy_report.html\"\n
      • Open the generated HTML report to identify energy consumption patterns.
    • Review Event Viewer:

      • Open Event Viewer by searching for it in the Start menu.
      • Navigate to \"Windows Logs\" > \"System.\"
      • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
    • Check Wake-up Sources:

      • Open a Command Prompt as an administrator.
      • Use the command powercfg /requests to identify processes preventing sleep.
      • Check Task Scheduler for tasks waking up the computer.
      • Use the command powercfg /waketimers to view active wake timers.
    • Resource Monitor:

      • Open Resource Monitor from the Start menu.
      • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
    • Windows Settings - Activity History:

      • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
      • Turn off \"Let Windows collect my activities from this PC.\"
    • Network Adapters:

      • Open Device Manager by searching for it in the Start menu.
      • Locate your network adapter, right-click, and go to \"Properties.\"
      • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
    • Review Installed Applications:

      • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
      • Check settings/preferences of individual applications for power-related options.
      • Uninstall unnecessary or problematic software.
    • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

    "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
    • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

    • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

    • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

      sfc /scannow\n

    • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

    • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

    • Press Win + R to open the Run dialog.
    • Type services.msc and press Enter.
    • Locate \"Windows Management Instrumentation\" in the list.
    • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

    • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

    • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

    • Press Win + X and select \"Event Viewer.\"

    • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
    • Look for entries with the source related to WMI or the application use to mount the ISO.

    • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

    • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

    "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
    • Adobe Debloat
    • Adobe Network Block
    • Disable Background Apps
    • Disable Fullscreen Optimizations
    • Disable Intel MM (vPro LMS)
    • Disable IPv6
    • Disable Microsoft Copilot
    • Disable Notification Tray/Calendar
    • DNS
    • Remove ALL MS Store Apps - NOT RECOMMENDED
    • Remove Home and Gallery from explorer
    • Remove Microsoft Edge
    • Remove OneDrive
    • Run OO Shutup 10
    • Run Tweaks
    • Set Classic Right-Click Menu
    • Set Display for Performance
    • Set Time to UTC (Dual Boot)
    • Undo Selected Tweaks
    "},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
    • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
    • Create Restore Point
    • Debloat Edge
    • Delete Temporary Files
    • Disable Activity History
    • Disable ConsumerFeatures
    • Disable GameDVR
    • Disable Hibernation
    • Disable Homegroup
    • Disable Location Tracking
    • Disable Powershell 7 Telemetry
    • Disable Storage Sense
    • Disable Telemetry
    • Disable Teredo
    • Disable Wifi-Sense
    • Enable End Task With Right Click
    • Run Disk Cleanup
    • Set Hibernation as default (good for laptops)
    • Set Services to Manual
    "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
    • Create WinUtil Shortcut
    "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
    • Bing Search in Start Menu
    • Center Taskbar Items
    • Dark Theme for Windows
    • Detailed BSoD
    • Mouse Acceleration
    • NumLock on Startup
    • Search Button in Taskbar
    • Show File Extensions
    • Show Hidden Files
    • Snap Assist Flyout
    • Snap Assist Suggestion
    • Snap Window
    • Sticky Keys
    • Task View Button in Taskbar
    • Verbose Messages During Logon
    • Widgets Button in Taskbar
    "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
    • Add and Activate Ultimate Performance Profile
    • Remove Ultimate Performance Profile
    "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"devdocs/#fixes","title":"Fixes","text":"
    • Remove Adobe Creative Cloud
    • Reset Network
    • Reset Windows Update
    • Set Up Autologin
    • System Corruption Scan
    • WinGet Reinstall
    "},{"location":"devdocs/#features_1","title":"Features","text":"
    • All .Net Framework (2,3,4)
    • Disable Legacy F8 Boot Recovery
    • Disable Search Box Web Suggestions in Registry(explorer restart)
    • Enable Daily Registry Backup Task 12.30am
    • Enable Legacy F8 Boot Recovery
    • Enable Search Box Web Suggestions in Registry(explorer restart)
    • HyperV Virtualization
    • Install Features
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Windows Sandbox
    • Windows Subsystem for Linux
    "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
    "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
    "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
    "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
    "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    "},{"location":"userguide/#dns","title":"DNS","text":"

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.
    "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

    "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
    "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
    "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
    • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox
    "},{"location":"userguide/#fixes","title":"Fixes","text":"
    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud
    "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"userguide/#updates","title":"Updates","text":"

    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    "},{"location":"userguide/#microwin","title":"MicroWin","text":"
    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
    "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    "},{"location":"userguide/#options","title":"Options","text":"
    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    "},{"location":"userguide/#customization-options","title":"Customization options","text":"
    • Keep Provisioned Packages: leaving this option unticked (default) will try to remove every operating system package.

    Some packages may remain after processing. This can happen if the packages in question are permanent or have been superseded by newer versions.

    • Keep Appx Packages: leaving this option unticked (default) will try to remove every Microsoft Store app from the Windows image.

    This option will exclude some applications that are essential in the event that you want or need to add a Store app later on.

    • Keep Defender: leaving this option unticked will try to remove every part of Windows Defender, including the Windows Security app.

    Leaving this option unticked is NOT recommended unless you plan to use a third-party antivirus solution on your MicroWin installation. In that regard, don't install AVs with bad reputations or rogueware.

    • Keep Edge: leaving this option unticked will try to remove every part of the Microsoft Edge browser using the best methods available.

    Leaving this option unticked is not recommended because it might break some applications that might depend on the Edge WebView2 runtime. However, if that happens, you can easily reinstall it

    "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    "},{"location":"userguide/#automation","title":"Automation","text":"
    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
    • Have a cup of coffee! Come back when it's done.
    "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

    Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

    Disables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

    Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

    Enables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
    "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
    function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

    Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

    Preview Code
    {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
    "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
          New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

    View the JSON file

    "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

    Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

    Preview Code
    {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

    .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

    Preview Code
    {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
    "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

    Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

    Preview Code
    {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
    "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
    • HypervisorPlatform
    • Microsoft-Hyper-V-All
    • Microsoft-Hyper-V
    • Microsoft-Hyper-V-Tools-All
    • Microsoft-Hyper-V-Management-PowerShell
    • Microsoft-Hyper-V-Hypervisor
    • Microsoft-Hyper-V-Services
    • Microsoft-Hyper-V-Management-Clients
    "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
    Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

    Enables legacy programs from previous versions of windows

    Preview Code
    {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
    "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

    Network File System (NFS) is a mechanism for storing files on a network.

    Preview Code
    {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
    "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
    • ServicesForNFS-ClientOnly
    • ClientForNFS-Infrastructure
    • NFS-Administration
    "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
    nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

    View the JSON file

    "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

    Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

    Preview Code
    {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
    "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
    "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
    function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
    "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
    function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
    "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
    function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
    function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
    "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
    function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
    "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
    function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

    If enable then includes web search results from Bing in your Start Menu search.

    Preview Code
    {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
    function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

    Enable/Disable Dark Mode.

    Preview Code
    {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
    Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

    If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

    Preview Code
    {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
    Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

    If Enabled then Hidden Files will be shown.

    Preview Code
    {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
    function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

    If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

    Preview Code
    {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
    Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

    Toggle the Num Lock key state when your computer starts.

    Preview Code
    {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
    function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

    If enabled then File extensions (e.g., .txt, .jpg) are visible.

    Preview Code
    {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
    function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

    If enabled then Snap preview is disabled when maximize button is hovered.

    Preview Code
    {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
    function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

    If enabled then you will get suggestions to snap other applications in the left over spaces.

    Preview Code
    {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
    function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

    If enabled you can align windows by dragging them. | Relogin Required

    Preview Code
    {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
    function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

    If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

    Preview Code
    {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
    Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

    If Enabled then Task View Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
    function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

    [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

    Preview Code
    {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
    function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

    If Enabled Search Button will be on the taskbar.

    Preview Code
    {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
    function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

    If Enabled then Widgets Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
    function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

    Show detailed messages during the login process for troubleshooting and diagnostics.

    Preview Code
    {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
    function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

    This erases recent docs, clipboard, and run history.

    Preview Code
    {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

    Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

    Preview Code
    {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

    GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

    Preview Code
    {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

    Erases TEMP Folders

    Preview Code
    {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
    Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

    Runs Disk Cleanup on Drive C: and removes old Windows Updates.

    Preview Code
    {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
          cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

    Disables various telemetry options, popups, and other annoyances in Edge.

    Preview Code
    {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

    Enables option to end task when right clicking a program in the taskbar

    Preview Code
    {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

    Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

    Preview Code
    {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
    powercfg.exe /hibernate off\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
    powercfg.exe /hibernate on\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

    Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

    Preview Code
    {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

    Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

    Preview Code
    {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
          Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

    Disables Location Tracking...DUH!

    Preview Code
    {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

    Type: String

    Original Value: Allow

    New Value: Deny

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

    This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

    Preview Code
    {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
    Invoke-WPFTweakPS7 -action \"PS7\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
    Invoke-WPFTweakPS7 -action \"PS5\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
    function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
    Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
    function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
    function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

    This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

    Preview Code
    {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

    Creates a restore point at runtime in case a revert is needed from WinUtil modifications

    Preview Code
    {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
            # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

    Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

    Preview Code
    {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

    Startup Type: Manual

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

    Storage Sense deletes temp files automatically.

    Preview Code
    {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

    Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

    Preview Code
    {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
          bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

    Type: String

    Original Value: 400

    New Value: 400

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

    Type: DWord

    Original Value: 20

    New Value: 30

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

    State: Disabled

    Original State: Enabled

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/","title":"Disable Teredo","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#description","title":"Description","text":"

    Teredo network tunneling is a ipv6 feature that can cause additional latency.

    Preview Code
    {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Teredo\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#invoke-script","title":"Invoke Script","text":"
    netsh interface teredo set state disabled\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#undo-script","title":"Undo Script","text":"
    netsh interface teredo set state default\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

    Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

    Preview Code
    {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
    "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
    function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

    Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

    Preview Code
    {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
          # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
          # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

    USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

    Preview Code
    {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
            $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

    Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

    Preview Code
    {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
          function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
          function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

    Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

    Preview Code
    {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

    Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

    Preview Code
    {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

    Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

    Preview Code
    {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
            Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
          Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

    Disables all Notifications INCLUDING Calendar

    Preview Code
    {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

    Disables IPv6.

    Preview Code
    {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
    Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
    Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

    Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

    Preview Code
    {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
    Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: String

    Original Value: 1

    New Value: 200

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

    Type: DWord

    Original Value: 1

    New Value: 3

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
    function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

    Disables MS Copilot AI built into Windows since 23H2.

    Preview Code
    {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

    Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

    Preview Code
    {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
             Uninstall-WinUtilEdgeBrowser\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
    Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

    Removes the Home and Gallery from explorer and sets This PC as default

    Preview Code
    {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
          REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
          REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

    Moves OneDrive files to Default Home Folders and Uninstalls it.

    Preview Code
    {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
          $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

    Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

    Preview Code
    {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
          New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
          Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

    Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

    Preview Code
    {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
    function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
    function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

    View the JSON file

    "}]} \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz index 09e4dd4e0e475033c3ac6060f3196eb44e540181..bde1c4a664ddc8ed4055c0ea8f3eab127a52f8bd 100644 GIT binary patch delta 13 Ucmb=gXP58h;Ar@~dm?)U03bF5{r~^~ delta 13 Ucmb=gXP58h;9!W^I+48s02(U;;Q#;t From 75ec1f8dc98ab9021f0275a7bbcd9bdbb0670ef7 Mon Sep 17 00:00:00 2001 From: <> Date: Wed, 14 Aug 2024 19:22:53 +0000 Subject: [PATCH 04/10] Deployed b0d54e4 with MkDocs version: 1.6.0 --- contribute/index.html | 16 +++++++++++++++- search/search_index.json | 2 +- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/contribute/index.html b/contribute/index.html index 61e865eb3..ff5908303 100644 --- a/contribute/index.html +++ b/contribute/index.html @@ -1 +1,15 @@ - Contributing Guide - WinUtil Documentation

    Contributing Guide

    \ No newline at end of file + Contributing Guide - WinUtil Documentation

    How to Contribute?

    Testing

    • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!

    Run the latest pre-release

    irm christitus.com/windev | iex
    +

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    Issues

    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the "Issues" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.

    Contribute Code

    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include "WPF" or "WinUtil" in the file name so it can be loaded into the runspace.

    Walk through

    Overview

    %%{init: {"flowchart": {"curve": "cardinal"}} }%%
    +graph TD
    +  A[Fork Project] --> B[Clone Repository];
    +  B --> C[Create New Branch];
    +  C --> D[Make Changes];
    +  D --> G[Test Changes];
    +  G --> H{Tests Passed?};
    +  H -->|Yes| E[Commit Changes];
    +  H -->|No| J[Fix Issues];
    +  J --> G;
    +  E --> F[Push Branch];
    +  F --> K[Create Pull Request];
    +  K --> L[Fill out PR template];
    +  classDef default stroke:#333,stroke-width:4px,font-size:12pt;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    Fork the Repo

    • Fork the WinUtil Repository here to create a copy that will be available in your repository list.

    Fork Image

    Fork Image

    Clone the Fork

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under "Your Repositories" and press "clone {repo name}"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    Testing your changes

    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\Compile.ps1 -run

    Compile

    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.

    Committing the changes

    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:

    Push Commit Image

    • Now, commit your changes once you are happy with the result.

    Commit Image

    • Push the changes to upload them to your fork on github.com.

    Push Commit Image

    Making a PR

    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the "/windev" build.
    • If you do not see your feature in the main "/win" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    \ No newline at end of file diff --git a/search/search_index.json b/search/search_index.json index 291d20ad0..248ec2606 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

    Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

    "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
    • You will first need to start a Powershell terminal as Admin.
    • Now you can run the following command:
      irm christitus.com/win | iex\n

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
    • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
    • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

    If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

    Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
    • Script doesn't run/PowerShell crashes:
    • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
    • Run:
      Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
    • Run:
      irm christitus.com/win | iex\n
    "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
    • Windows taking longer to shut down:
    • #69 Turn on fast startup: Press Windows key + R, then type:
      control /name Microsoft.PowerOptions /page pageGlobalSettings\n
    • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
      powercfg /H off\n
    • #69 95 #232 Windows Search does not work: Enable Background Apps
    • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

      Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

    • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

    • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

    • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

    "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
    • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

    • Check Battery Health:

    • Open a Command Prompt as an administrator.
    • Run the following command to generate a battery report:
      powercfg /batteryreport /output \"C:\\battery_report.html\"\n
    • Open the generated HTML report to review information about battery health and usage.

    • Review Power Settings:

    • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
    • Adjust power plan settings based on your preferences and usage patterns.
    • Click on \"Additional power settings\" to access advanced power settings.

    • Identify Power-Hungry Apps:

    • Right-click on the taskbar and select \"Task Manager.\"
    • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
    • Consider closing unnecessary background applications.

    • Update Drivers:

    • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
    • Ensure graphics, chipset, and other essential drivers are up to date.

    • Check for Windows Updates:

    • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
    • Check for and install any available updates for your operating system.

    • Reduce Screen Brightness:

    • Adjust screen brightness based on your preferences and lighting conditions.
    • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

    • Battery Saver Mode:

    • Go to \"Settings\" > \"System\" > \"Battery.\"
    • Turn on \"Battery saver\" to limit background activity and conserve power.

    • Check Power Usage in Settings:

    • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
    • Review the list of apps and their power usage.

    • Check Background Apps:

    • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
    • Disable unnecessary apps running in the background.

    • Use Powercfg for Analysis:

      • Open a Command Prompt as an administrator.
      • Run the following command to analyze energy usage and generate a report:
        powercfg /energy /output \"C:\\energy_report.html\"\n
      • Open the generated HTML report to identify energy consumption patterns.
    • Review Event Viewer:

      • Open Event Viewer by searching for it in the Start menu.
      • Navigate to \"Windows Logs\" > \"System.\"
      • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
    • Check Wake-up Sources:

      • Open a Command Prompt as an administrator.
      • Use the command powercfg /requests to identify processes preventing sleep.
      • Check Task Scheduler for tasks waking up the computer.
      • Use the command powercfg /waketimers to view active wake timers.
    • Resource Monitor:

      • Open Resource Monitor from the Start menu.
      • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
    • Windows Settings - Activity History:

      • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
      • Turn off \"Let Windows collect my activities from this PC.\"
    • Network Adapters:

      • Open Device Manager by searching for it in the Start menu.
      • Locate your network adapter, right-click, and go to \"Properties.\"
      • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
    • Review Installed Applications:

      • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
      • Check settings/preferences of individual applications for power-related options.
      • Uninstall unnecessary or problematic software.
    • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

    "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
    • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

    • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

    • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

      sfc /scannow\n

    • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

    • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

    • Press Win + R to open the Run dialog.
    • Type services.msc and press Enter.
    • Locate \"Windows Management Instrumentation\" in the list.
    • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

    • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

    • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

    • Press Win + X and select \"Event Viewer.\"

    • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
    • Look for entries with the source related to WMI or the application use to mount the ISO.

    • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

    • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

    "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
    • Adobe Debloat
    • Adobe Network Block
    • Disable Background Apps
    • Disable Fullscreen Optimizations
    • Disable Intel MM (vPro LMS)
    • Disable IPv6
    • Disable Microsoft Copilot
    • Disable Notification Tray/Calendar
    • DNS
    • Remove ALL MS Store Apps - NOT RECOMMENDED
    • Remove Home and Gallery from explorer
    • Remove Microsoft Edge
    • Remove OneDrive
    • Run OO Shutup 10
    • Run Tweaks
    • Set Classic Right-Click Menu
    • Set Display for Performance
    • Set Time to UTC (Dual Boot)
    • Undo Selected Tweaks
    "},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
    • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
    • Create Restore Point
    • Debloat Edge
    • Delete Temporary Files
    • Disable Activity History
    • Disable ConsumerFeatures
    • Disable GameDVR
    • Disable Hibernation
    • Disable Homegroup
    • Disable Location Tracking
    • Disable Powershell 7 Telemetry
    • Disable Storage Sense
    • Disable Telemetry
    • Disable Teredo
    • Disable Wifi-Sense
    • Enable End Task With Right Click
    • Run Disk Cleanup
    • Set Hibernation as default (good for laptops)
    • Set Services to Manual
    "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
    • Create WinUtil Shortcut
    "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
    • Bing Search in Start Menu
    • Center Taskbar Items
    • Dark Theme for Windows
    • Detailed BSoD
    • Mouse Acceleration
    • NumLock on Startup
    • Search Button in Taskbar
    • Show File Extensions
    • Show Hidden Files
    • Snap Assist Flyout
    • Snap Assist Suggestion
    • Snap Window
    • Sticky Keys
    • Task View Button in Taskbar
    • Verbose Messages During Logon
    • Widgets Button in Taskbar
    "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
    • Add and Activate Ultimate Performance Profile
    • Remove Ultimate Performance Profile
    "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"devdocs/#fixes","title":"Fixes","text":"
    • Remove Adobe Creative Cloud
    • Reset Network
    • Reset Windows Update
    • Set Up Autologin
    • System Corruption Scan
    • WinGet Reinstall
    "},{"location":"devdocs/#features_1","title":"Features","text":"
    • All .Net Framework (2,3,4)
    • Disable Legacy F8 Boot Recovery
    • Disable Search Box Web Suggestions in Registry(explorer restart)
    • Enable Daily Registry Backup Task 12.30am
    • Enable Legacy F8 Boot Recovery
    • Enable Search Box Web Suggestions in Registry(explorer restart)
    • HyperV Virtualization
    • Install Features
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Windows Sandbox
    • Windows Subsystem for Linux
    "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
    "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
    "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
    "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
    "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    "},{"location":"userguide/#dns","title":"DNS","text":"

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.
    "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

    "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
    "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
    "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
    • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox
    "},{"location":"userguide/#fixes","title":"Fixes","text":"
    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud
    "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"userguide/#updates","title":"Updates","text":"

    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    "},{"location":"userguide/#microwin","title":"MicroWin","text":"
    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
    "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    "},{"location":"userguide/#options","title":"Options","text":"
    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    "},{"location":"userguide/#customization-options","title":"Customization options","text":"
    • Keep Provisioned Packages: leaving this option unticked (default) will try to remove every operating system package.

    Some packages may remain after processing. This can happen if the packages in question are permanent or have been superseded by newer versions.

    • Keep Appx Packages: leaving this option unticked (default) will try to remove every Microsoft Store app from the Windows image.

    This option will exclude some applications that are essential in the event that you want or need to add a Store app later on.

    • Keep Defender: leaving this option unticked will try to remove every part of Windows Defender, including the Windows Security app.

    Leaving this option unticked is NOT recommended unless you plan to use a third-party antivirus solution on your MicroWin installation. In that regard, don't install AVs with bad reputations or rogueware.

    • Keep Edge: leaving this option unticked will try to remove every part of the Microsoft Edge browser using the best methods available.

    Leaving this option unticked is not recommended because it might break some applications that might depend on the Edge WebView2 runtime. However, if that happens, you can easily reinstall it

    "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    "},{"location":"userguide/#automation","title":"Automation","text":"
    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
    • Have a cup of coffee! Come back when it's done.
    "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

    Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

    Disables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

    Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

    Enables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
    "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
    function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

    Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

    Preview Code
    {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
    "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
          New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

    View the JSON file

    "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

    Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

    Preview Code
    {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

    .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

    Preview Code
    {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
    "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

    Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

    Preview Code
    {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
    "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
    • HypervisorPlatform
    • Microsoft-Hyper-V-All
    • Microsoft-Hyper-V
    • Microsoft-Hyper-V-Tools-All
    • Microsoft-Hyper-V-Management-PowerShell
    • Microsoft-Hyper-V-Hypervisor
    • Microsoft-Hyper-V-Services
    • Microsoft-Hyper-V-Management-Clients
    "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
    Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

    Enables legacy programs from previous versions of windows

    Preview Code
    {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
    "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

    Network File System (NFS) is a mechanism for storing files on a network.

    Preview Code
    {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
    "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
    • ServicesForNFS-ClientOnly
    • ClientForNFS-Infrastructure
    • NFS-Administration
    "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
    nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

    View the JSON file

    "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

    Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

    Preview Code
    {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
    "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
    "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
    function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
    "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
    function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
    "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
    function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
    function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
    "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
    function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
    "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
    function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

    If enable then includes web search results from Bing in your Start Menu search.

    Preview Code
    {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
    function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

    Enable/Disable Dark Mode.

    Preview Code
    {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
    Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

    If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

    Preview Code
    {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
    Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

    If Enabled then Hidden Files will be shown.

    Preview Code
    {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
    function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

    If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

    Preview Code
    {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
    Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

    Toggle the Num Lock key state when your computer starts.

    Preview Code
    {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
    function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

    If enabled then File extensions (e.g., .txt, .jpg) are visible.

    Preview Code
    {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
    function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

    If enabled then Snap preview is disabled when maximize button is hovered.

    Preview Code
    {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
    function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

    If enabled then you will get suggestions to snap other applications in the left over spaces.

    Preview Code
    {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
    function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

    If enabled you can align windows by dragging them. | Relogin Required

    Preview Code
    {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
    function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

    If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

    Preview Code
    {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
    Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

    If Enabled then Task View Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
    function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

    [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

    Preview Code
    {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
    function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

    If Enabled Search Button will be on the taskbar.

    Preview Code
    {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
    function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

    If Enabled then Widgets Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
    function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

    Show detailed messages during the login process for troubleshooting and diagnostics.

    Preview Code
    {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
    function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

    This erases recent docs, clipboard, and run history.

    Preview Code
    {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

    Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

    Preview Code
    {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

    GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

    Preview Code
    {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

    Erases TEMP Folders

    Preview Code
    {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
    Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

    Runs Disk Cleanup on Drive C: and removes old Windows Updates.

    Preview Code
    {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
          cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

    Disables various telemetry options, popups, and other annoyances in Edge.

    Preview Code
    {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

    Enables option to end task when right clicking a program in the taskbar

    Preview Code
    {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

    Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

    Preview Code
    {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
    powercfg.exe /hibernate off\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
    powercfg.exe /hibernate on\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

    Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

    Preview Code
    {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

    Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

    Preview Code
    {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
          Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

    Disables Location Tracking...DUH!

    Preview Code
    {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

    Type: String

    Original Value: Allow

    New Value: Deny

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

    This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

    Preview Code
    {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
    Invoke-WPFTweakPS7 -action \"PS7\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
    Invoke-WPFTweakPS7 -action \"PS5\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
    function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
    Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
    function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
    function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

    This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

    Preview Code
    {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

    Creates a restore point at runtime in case a revert is needed from WinUtil modifications

    Preview Code
    {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
            # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

    Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

    Preview Code
    {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

    Startup Type: Manual

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

    Storage Sense deletes temp files automatically.

    Preview Code
    {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

    Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

    Preview Code
    {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
          bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

    Type: String

    Original Value: 400

    New Value: 400

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

    Type: DWord

    Original Value: 20

    New Value: 30

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

    State: Disabled

    Original State: Enabled

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/","title":"Disable Teredo","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#description","title":"Description","text":"

    Teredo network tunneling is a ipv6 feature that can cause additional latency.

    Preview Code
    {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Teredo\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#invoke-script","title":"Invoke Script","text":"
    netsh interface teredo set state disabled\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#undo-script","title":"Undo Script","text":"
    netsh interface teredo set state default\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

    Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

    Preview Code
    {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
    "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
    function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

    Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

    Preview Code
    {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
          # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
          # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

    USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

    Preview Code
    {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
            $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

    Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

    Preview Code
    {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
          function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
          function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

    Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

    Preview Code
    {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

    Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

    Preview Code
    {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

    Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

    Preview Code
    {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
            Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
          Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

    Disables all Notifications INCLUDING Calendar

    Preview Code
    {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

    Disables IPv6.

    Preview Code
    {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
    Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
    Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

    Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

    Preview Code
    {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
    Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: String

    Original Value: 1

    New Value: 200

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

    Type: DWord

    Original Value: 1

    New Value: 3

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
    function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

    Disables MS Copilot AI built into Windows since 23H2.

    Preview Code
    {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

    Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

    Preview Code
    {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
             Uninstall-WinUtilEdgeBrowser\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
    Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

    Removes the Home and Gallery from explorer and sets This PC as default

    Preview Code
    {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
          REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
          REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

    Moves OneDrive files to Default Home Folders and Uninstalls it.

    Preview Code
    {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
          $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

    Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

    Preview Code
    {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
          New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
          Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

    Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

    Preview Code
    {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
    function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
    function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

    View the JSON file

    "}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

    Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

    "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
    • You will first need to start a Powershell terminal as Admin.
    • Now you can run the following command:
      irm christitus.com/win | iex\n

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
    • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
    • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

    If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

    Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
    • Script doesn't run/PowerShell crashes:
    • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
    • Run:
      Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
    • Run:
      irm christitus.com/win | iex\n
    "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
    • Windows taking longer to shut down:
    • #69 Turn on fast startup: Press Windows key + R, then type:
      control /name Microsoft.PowerOptions /page pageGlobalSettings\n
    • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
      powercfg /H off\n
    • #69 95 #232 Windows Search does not work: Enable Background Apps
    • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

      Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

    • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

    • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

    • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

    "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
    • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

    • Check Battery Health:

    • Open a Command Prompt as an administrator.
    • Run the following command to generate a battery report:
      powercfg /batteryreport /output \"C:\\battery_report.html\"\n
    • Open the generated HTML report to review information about battery health and usage.

    • Review Power Settings:

    • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
    • Adjust power plan settings based on your preferences and usage patterns.
    • Click on \"Additional power settings\" to access advanced power settings.

    • Identify Power-Hungry Apps:

    • Right-click on the taskbar and select \"Task Manager.\"
    • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
    • Consider closing unnecessary background applications.

    • Update Drivers:

    • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
    • Ensure graphics, chipset, and other essential drivers are up to date.

    • Check for Windows Updates:

    • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
    • Check for and install any available updates for your operating system.

    • Reduce Screen Brightness:

    • Adjust screen brightness based on your preferences and lighting conditions.
    • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

    • Battery Saver Mode:

    • Go to \"Settings\" > \"System\" > \"Battery.\"
    • Turn on \"Battery saver\" to limit background activity and conserve power.

    • Check Power Usage in Settings:

    • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
    • Review the list of apps and their power usage.

    • Check Background Apps:

    • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
    • Disable unnecessary apps running in the background.

    • Use Powercfg for Analysis:

      • Open a Command Prompt as an administrator.
      • Run the following command to analyze energy usage and generate a report:
        powercfg /energy /output \"C:\\energy_report.html\"\n
      • Open the generated HTML report to identify energy consumption patterns.
    • Review Event Viewer:

      • Open Event Viewer by searching for it in the Start menu.
      • Navigate to \"Windows Logs\" > \"System.\"
      • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
    • Check Wake-up Sources:

      • Open a Command Prompt as an administrator.
      • Use the command powercfg /requests to identify processes preventing sleep.
      • Check Task Scheduler for tasks waking up the computer.
      • Use the command powercfg /waketimers to view active wake timers.
    • Resource Monitor:

      • Open Resource Monitor from the Start menu.
      • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
    • Windows Settings - Activity History:

      • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
      • Turn off \"Let Windows collect my activities from this PC.\"
    • Network Adapters:

      • Open Device Manager by searching for it in the Start menu.
      • Locate your network adapter, right-click, and go to \"Properties.\"
      • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
    • Review Installed Applications:

      • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
      • Check settings/preferences of individual applications for power-related options.
      • Uninstall unnecessary or problematic software.
    • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

    "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
    • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

    • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

    • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

      sfc /scannow\n

    • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

    • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

    • Press Win + R to open the Run dialog.
    • Type services.msc and press Enter.
    • Locate \"Windows Management Instrumentation\" in the list.
    • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

    • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

    • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

    • Press Win + X and select \"Event Viewer.\"

    • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
    • Look for entries with the source related to WMI or the application use to mount the ISO.

    • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

    • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

    "},{"location":"contribute/","title":"How to Contribute?","text":""},{"location":"contribute/#testing","title":"Testing","text":"
    • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!
    "},{"location":"contribute/#run-the-latest-pre-release","title":"Run the latest pre-release","text":"
    irm christitus.com/windev | iex\n

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    "},{"location":"contribute/#issues","title":"Issues","text":"
    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the \"Issues\" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
    "},{"location":"contribute/#contribute-code","title":"Contribute Code","text":"
    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include \"WPF\" or \"WinUtil\" in the file name so it can be loaded into the runspace.

    "},{"location":"contribute/#walk-through","title":"Walk through","text":"
    • This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
      • Commit through WEB
      • Commit through GitHub Desktop
      • Create a Pull Request
    "},{"location":"contribute/#overview","title":"Overview","text":"
    %%{init: {\"flowchart\": {\"curve\": \"cardinal\"}} }%%\ngraph TD\n\u00a0 A[Fork Project] --> B[Clone Repository];\n\u00a0 B --> C[Create New Branch];\n\u00a0 C --> D[Make Changes];\n\u00a0 D --> G[Test Changes];\n\u00a0 G --> H{Tests Passed?};\n\u00a0 H -->|Yes| E[Commit Changes];\n\u00a0 H -->|No| J[Fix Issues];\n\u00a0 J --> G;\n\u00a0 E --> F[Push Branch];\n\u00a0 F --> K[Create Pull Request];\n\u00a0 K --> L[Fill out PR template];\n  classDef default stroke:#333,stroke-width:4px,font-size:12pt;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    "},{"location":"contribute/#fork-the-repo","title":"Fork the Repo","text":"
    • Fork the WinUtil Repository here to create a copy that will be available in your repository list.
    "},{"location":"contribute/#clone-the-fork","title":"Clone the Fork","text":"

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under \"Your Repositories\" and press \"clone {repo name}\"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    "},{"location":"contribute/#testing-your-changes","title":"Testing your changes","text":"
    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\\Compile.ps1 -run

    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
    "},{"location":"contribute/#committing-the-changes","title":"Committing the changes","text":"
    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:
    • Now, commit your changes once you are happy with the result.
    • Push the changes to upload them to your fork on github.com.
    "},{"location":"contribute/#making-a-pr","title":"Making a PR","text":"
    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the \"/windev\" build.
    • If you do not see your feature in the main \"/win\" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
    • Adobe Debloat
    • Adobe Network Block
    • Disable Background Apps
    • Disable Fullscreen Optimizations
    • Disable Intel MM (vPro LMS)
    • Disable IPv6
    • Disable Microsoft Copilot
    • Disable Notification Tray/Calendar
    • DNS
    • Remove ALL MS Store Apps - NOT RECOMMENDED
    • Remove Home and Gallery from explorer
    • Remove Microsoft Edge
    • Remove OneDrive
    • Run OO Shutup 10
    • Run Tweaks
    • Set Classic Right-Click Menu
    • Set Display for Performance
    • Set Time to UTC (Dual Boot)
    • Undo Selected Tweaks
    "},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
    • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
    • Create Restore Point
    • Debloat Edge
    • Delete Temporary Files
    • Disable Activity History
    • Disable ConsumerFeatures
    • Disable GameDVR
    • Disable Hibernation
    • Disable Homegroup
    • Disable Location Tracking
    • Disable Powershell 7 Telemetry
    • Disable Storage Sense
    • Disable Telemetry
    • Disable Teredo
    • Disable Wifi-Sense
    • Enable End Task With Right Click
    • Run Disk Cleanup
    • Set Hibernation as default (good for laptops)
    • Set Services to Manual
    "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
    • Create WinUtil Shortcut
    "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
    • Bing Search in Start Menu
    • Center Taskbar Items
    • Dark Theme for Windows
    • Detailed BSoD
    • Mouse Acceleration
    • NumLock on Startup
    • Search Button in Taskbar
    • Show File Extensions
    • Show Hidden Files
    • Snap Assist Flyout
    • Snap Assist Suggestion
    • Snap Window
    • Sticky Keys
    • Task View Button in Taskbar
    • Verbose Messages During Logon
    • Widgets Button in Taskbar
    "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
    • Add and Activate Ultimate Performance Profile
    • Remove Ultimate Performance Profile
    "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"devdocs/#fixes","title":"Fixes","text":"
    • Remove Adobe Creative Cloud
    • Reset Network
    • Reset Windows Update
    • Set Up Autologin
    • System Corruption Scan
    • WinGet Reinstall
    "},{"location":"devdocs/#features_1","title":"Features","text":"
    • All .Net Framework (2,3,4)
    • Disable Legacy F8 Boot Recovery
    • Disable Search Box Web Suggestions in Registry(explorer restart)
    • Enable Daily Registry Backup Task 12.30am
    • Enable Legacy F8 Boot Recovery
    • Enable Search Box Web Suggestions in Registry(explorer restart)
    • HyperV Virtualization
    • Install Features
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Windows Sandbox
    • Windows Subsystem for Linux
    "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
    "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
    "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
    "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
    "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    "},{"location":"userguide/#dns","title":"DNS","text":"

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.
    "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

    "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
    "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
    "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
    • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox
    "},{"location":"userguide/#fixes","title":"Fixes","text":"
    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud
    "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"userguide/#updates","title":"Updates","text":"

    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    "},{"location":"userguide/#microwin","title":"MicroWin","text":"
    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
    "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    "},{"location":"userguide/#options","title":"Options","text":"
    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    "},{"location":"userguide/#customization-options","title":"Customization options","text":"
    • Keep Provisioned Packages: leaving this option unticked (default) will try to remove every operating system package.

    Some packages may remain after processing. This can happen if the packages in question are permanent or have been superseded by newer versions.

    • Keep Appx Packages: leaving this option unticked (default) will try to remove every Microsoft Store app from the Windows image.

    This option will exclude some applications that are essential in the event that you want or need to add a Store app later on.

    • Keep Defender: leaving this option unticked will try to remove every part of Windows Defender, including the Windows Security app.

    Leaving this option unticked is NOT recommended unless you plan to use a third-party antivirus solution on your MicroWin installation. In that regard, don't install AVs with bad reputations or rogueware.

    • Keep Edge: leaving this option unticked will try to remove every part of the Microsoft Edge browser using the best methods available.

    Leaving this option unticked is not recommended because it might break some applications that might depend on the Edge WebView2 runtime. However, if that happens, you can easily reinstall it

    "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    "},{"location":"userguide/#automation","title":"Automation","text":"
    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
    • Have a cup of coffee! Come back when it's done.
    "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

    Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

    Disables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

    Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

    Enables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
    "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
    function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

    Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

    Preview Code
    {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
    "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
          New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

    View the JSON file

    "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

    Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

    Preview Code
    {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

    .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

    Preview Code
    {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
    "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

    Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

    Preview Code
    {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
    "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
    • HypervisorPlatform
    • Microsoft-Hyper-V-All
    • Microsoft-Hyper-V
    • Microsoft-Hyper-V-Tools-All
    • Microsoft-Hyper-V-Management-PowerShell
    • Microsoft-Hyper-V-Hypervisor
    • Microsoft-Hyper-V-Services
    • Microsoft-Hyper-V-Management-Clients
    "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
    Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

    Enables legacy programs from previous versions of windows

    Preview Code
    {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
    "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

    Network File System (NFS) is a mechanism for storing files on a network.

    Preview Code
    {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
    "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
    • ServicesForNFS-ClientOnly
    • ClientForNFS-Infrastructure
    • NFS-Administration
    "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
    nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

    View the JSON file

    "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

    Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

    Preview Code
    {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
    "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
    "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
    function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
    "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
    function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
    "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
    function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
    function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
    "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
    function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
    "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
    function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

    If enable then includes web search results from Bing in your Start Menu search.

    Preview Code
    {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
    function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

    Enable/Disable Dark Mode.

    Preview Code
    {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
    Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

    If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

    Preview Code
    {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
    Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

    If Enabled then Hidden Files will be shown.

    Preview Code
    {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
    function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

    If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

    Preview Code
    {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
    Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

    Toggle the Num Lock key state when your computer starts.

    Preview Code
    {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
    function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

    If enabled then File extensions (e.g., .txt, .jpg) are visible.

    Preview Code
    {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
    function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

    If enabled then Snap preview is disabled when maximize button is hovered.

    Preview Code
    {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
    function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

    If enabled then you will get suggestions to snap other applications in the left over spaces.

    Preview Code
    {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
    function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

    If enabled you can align windows by dragging them. | Relogin Required

    Preview Code
    {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
    function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

    If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

    Preview Code
    {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
    Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

    If Enabled then Task View Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
    function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

    [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

    Preview Code
    {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
    function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

    If Enabled Search Button will be on the taskbar.

    Preview Code
    {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
    function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

    If Enabled then Widgets Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
    function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

    Show detailed messages during the login process for troubleshooting and diagnostics.

    Preview Code
    {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
    function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

    This erases recent docs, clipboard, and run history.

    Preview Code
    {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

    Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

    Preview Code
    {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

    GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

    Preview Code
    {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

    Erases TEMP Folders

    Preview Code
    {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
    Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

    Runs Disk Cleanup on Drive C: and removes old Windows Updates.

    Preview Code
    {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
          cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

    Disables various telemetry options, popups, and other annoyances in Edge.

    Preview Code
    {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

    Enables option to end task when right clicking a program in the taskbar

    Preview Code
    {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

    Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

    Preview Code
    {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
    powercfg.exe /hibernate off\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
    powercfg.exe /hibernate on\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

    Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

    Preview Code
    {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

    Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

    Preview Code
    {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
          Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

    Disables Location Tracking...DUH!

    Preview Code
    {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

    Type: String

    Original Value: Allow

    New Value: Deny

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

    This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

    Preview Code
    {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
    Invoke-WPFTweakPS7 -action \"PS7\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
    Invoke-WPFTweakPS7 -action \"PS5\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
    function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
    Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
    function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
    function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

    This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

    Preview Code
    {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

    Creates a restore point at runtime in case a revert is needed from WinUtil modifications

    Preview Code
    {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
            # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

    Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

    Preview Code
    {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

    Startup Type: Manual

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

    Storage Sense deletes temp files automatically.

    Preview Code
    {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

    Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

    Preview Code
    {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
          bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

    Type: String

    Original Value: 400

    New Value: 400

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

    Type: DWord

    Original Value: 20

    New Value: 30

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

    State: Disabled

    Original State: Enabled

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/","title":"Disable Teredo","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#description","title":"Description","text":"

    Teredo network tunneling is a ipv6 feature that can cause additional latency.

    Preview Code
    {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Teredo\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#invoke-script","title":"Invoke Script","text":"
    netsh interface teredo set state disabled\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#undo-script","title":"Undo Script","text":"
    netsh interface teredo set state default\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

    Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

    Preview Code
    {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
    "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
    function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

    Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

    Preview Code
    {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
          # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
          # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

    USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

    Preview Code
    {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
            $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

    Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

    Preview Code
    {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
          function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
          function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

    Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

    Preview Code
    {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

    Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

    Preview Code
    {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

    Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

    Preview Code
    {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
            Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
          Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

    Disables all Notifications INCLUDING Calendar

    Preview Code
    {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

    Disables IPv6.

    Preview Code
    {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
    Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
    Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

    Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

    Preview Code
    {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
    Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: String

    Original Value: 1

    New Value: 200

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

    Type: DWord

    Original Value: 1

    New Value: 3

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
    function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

    Disables MS Copilot AI built into Windows since 23H2.

    Preview Code
    {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

    Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

    Preview Code
    {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
             Uninstall-WinUtilEdgeBrowser\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
    Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

    Removes the Home and Gallery from explorer and sets This PC as default

    Preview Code
    {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
          REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
          REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

    Moves OneDrive files to Default Home Folders and Uninstalls it.

    Preview Code
    {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
          $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

    Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

    Preview Code
    {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
          New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
          Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

    Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

    Preview Code
    {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
    function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
    function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

    View the JSON file

    "}]} \ No newline at end of file From 71d613b49d278fa0dc50d72e3d18858e051b748f Mon Sep 17 00:00:00 2001 From: <> Date: Mon, 19 Aug 2024 19:21:42 +0000 Subject: [PATCH 05/10] Deployed 2748767 with MkDocs version: 1.6.0 --- search/search_index.json | 2 +- sitemap.xml.gz | Bin 127 -> 127 bytes userguide/index.html | 4 ++-- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/search/search_index.json b/search/search_index.json index 248ec2606..e3aa46cfb 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

    Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

    "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
    • You will first need to start a Powershell terminal as Admin.
    • Now you can run the following command:
      irm christitus.com/win | iex\n

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
    • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
    • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

    If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

    Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
    • Script doesn't run/PowerShell crashes:
    • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
    • Run:
      Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
    • Run:
      irm christitus.com/win | iex\n
    "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
    • Windows taking longer to shut down:
    • #69 Turn on fast startup: Press Windows key + R, then type:
      control /name Microsoft.PowerOptions /page pageGlobalSettings\n
    • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
      powercfg /H off\n
    • #69 95 #232 Windows Search does not work: Enable Background Apps
    • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

      Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

    • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

    • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

    • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

    "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
    • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

    • Check Battery Health:

    • Open a Command Prompt as an administrator.
    • Run the following command to generate a battery report:
      powercfg /batteryreport /output \"C:\\battery_report.html\"\n
    • Open the generated HTML report to review information about battery health and usage.

    • Review Power Settings:

    • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
    • Adjust power plan settings based on your preferences and usage patterns.
    • Click on \"Additional power settings\" to access advanced power settings.

    • Identify Power-Hungry Apps:

    • Right-click on the taskbar and select \"Task Manager.\"
    • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
    • Consider closing unnecessary background applications.

    • Update Drivers:

    • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
    • Ensure graphics, chipset, and other essential drivers are up to date.

    • Check for Windows Updates:

    • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
    • Check for and install any available updates for your operating system.

    • Reduce Screen Brightness:

    • Adjust screen brightness based on your preferences and lighting conditions.
    • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

    • Battery Saver Mode:

    • Go to \"Settings\" > \"System\" > \"Battery.\"
    • Turn on \"Battery saver\" to limit background activity and conserve power.

    • Check Power Usage in Settings:

    • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
    • Review the list of apps and their power usage.

    • Check Background Apps:

    • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
    • Disable unnecessary apps running in the background.

    • Use Powercfg for Analysis:

      • Open a Command Prompt as an administrator.
      • Run the following command to analyze energy usage and generate a report:
        powercfg /energy /output \"C:\\energy_report.html\"\n
      • Open the generated HTML report to identify energy consumption patterns.
    • Review Event Viewer:

      • Open Event Viewer by searching for it in the Start menu.
      • Navigate to \"Windows Logs\" > \"System.\"
      • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
    • Check Wake-up Sources:

      • Open a Command Prompt as an administrator.
      • Use the command powercfg /requests to identify processes preventing sleep.
      • Check Task Scheduler for tasks waking up the computer.
      • Use the command powercfg /waketimers to view active wake timers.
    • Resource Monitor:

      • Open Resource Monitor from the Start menu.
      • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
    • Windows Settings - Activity History:

      • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
      • Turn off \"Let Windows collect my activities from this PC.\"
    • Network Adapters:

      • Open Device Manager by searching for it in the Start menu.
      • Locate your network adapter, right-click, and go to \"Properties.\"
      • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
    • Review Installed Applications:

      • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
      • Check settings/preferences of individual applications for power-related options.
      • Uninstall unnecessary or problematic software.
    • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

    "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
    • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

    • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

    • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

      sfc /scannow\n

    • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

    • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

    • Press Win + R to open the Run dialog.
    • Type services.msc and press Enter.
    • Locate \"Windows Management Instrumentation\" in the list.
    • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

    • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

    • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

    • Press Win + X and select \"Event Viewer.\"

    • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
    • Look for entries with the source related to WMI or the application use to mount the ISO.

    • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

    • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

    "},{"location":"contribute/","title":"How to Contribute?","text":""},{"location":"contribute/#testing","title":"Testing","text":"
    • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!
    "},{"location":"contribute/#run-the-latest-pre-release","title":"Run the latest pre-release","text":"
    irm christitus.com/windev | iex\n

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    "},{"location":"contribute/#issues","title":"Issues","text":"
    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the \"Issues\" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
    "},{"location":"contribute/#contribute-code","title":"Contribute Code","text":"
    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include \"WPF\" or \"WinUtil\" in the file name so it can be loaded into the runspace.

    "},{"location":"contribute/#walk-through","title":"Walk through","text":"
    • This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
      • Commit through WEB
      • Commit through GitHub Desktop
      • Create a Pull Request
    "},{"location":"contribute/#overview","title":"Overview","text":"
    %%{init: {\"flowchart\": {\"curve\": \"cardinal\"}} }%%\ngraph TD\n\u00a0 A[Fork Project] --> B[Clone Repository];\n\u00a0 B --> C[Create New Branch];\n\u00a0 C --> D[Make Changes];\n\u00a0 D --> G[Test Changes];\n\u00a0 G --> H{Tests Passed?};\n\u00a0 H -->|Yes| E[Commit Changes];\n\u00a0 H -->|No| J[Fix Issues];\n\u00a0 J --> G;\n\u00a0 E --> F[Push Branch];\n\u00a0 F --> K[Create Pull Request];\n\u00a0 K --> L[Fill out PR template];\n  classDef default stroke:#333,stroke-width:4px,font-size:12pt;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    "},{"location":"contribute/#fork-the-repo","title":"Fork the Repo","text":"
    • Fork the WinUtil Repository here to create a copy that will be available in your repository list.
    "},{"location":"contribute/#clone-the-fork","title":"Clone the Fork","text":"

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under \"Your Repositories\" and press \"clone {repo name}\"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    "},{"location":"contribute/#testing-your-changes","title":"Testing your changes","text":"
    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\\Compile.ps1 -run

    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
    "},{"location":"contribute/#committing-the-changes","title":"Committing the changes","text":"
    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:
    • Now, commit your changes once you are happy with the result.
    • Push the changes to upload them to your fork on github.com.
    "},{"location":"contribute/#making-a-pr","title":"Making a PR","text":"
    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the \"/windev\" build.
    • If you do not see your feature in the main \"/win\" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
    • Adobe Debloat
    • Adobe Network Block
    • Disable Background Apps
    • Disable Fullscreen Optimizations
    • Disable Intel MM (vPro LMS)
    • Disable IPv6
    • Disable Microsoft Copilot
    • Disable Notification Tray/Calendar
    • DNS
    • Remove ALL MS Store Apps - NOT RECOMMENDED
    • Remove Home and Gallery from explorer
    • Remove Microsoft Edge
    • Remove OneDrive
    • Run OO Shutup 10
    • Run Tweaks
    • Set Classic Right-Click Menu
    • Set Display for Performance
    • Set Time to UTC (Dual Boot)
    • Undo Selected Tweaks
    "},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
    • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
    • Create Restore Point
    • Debloat Edge
    • Delete Temporary Files
    • Disable Activity History
    • Disable ConsumerFeatures
    • Disable GameDVR
    • Disable Hibernation
    • Disable Homegroup
    • Disable Location Tracking
    • Disable Powershell 7 Telemetry
    • Disable Storage Sense
    • Disable Telemetry
    • Disable Teredo
    • Disable Wifi-Sense
    • Enable End Task With Right Click
    • Run Disk Cleanup
    • Set Hibernation as default (good for laptops)
    • Set Services to Manual
    "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
    • Create WinUtil Shortcut
    "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
    • Bing Search in Start Menu
    • Center Taskbar Items
    • Dark Theme for Windows
    • Detailed BSoD
    • Mouse Acceleration
    • NumLock on Startup
    • Search Button in Taskbar
    • Show File Extensions
    • Show Hidden Files
    • Snap Assist Flyout
    • Snap Assist Suggestion
    • Snap Window
    • Sticky Keys
    • Task View Button in Taskbar
    • Verbose Messages During Logon
    • Widgets Button in Taskbar
    "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
    • Add and Activate Ultimate Performance Profile
    • Remove Ultimate Performance Profile
    "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"devdocs/#fixes","title":"Fixes","text":"
    • Remove Adobe Creative Cloud
    • Reset Network
    • Reset Windows Update
    • Set Up Autologin
    • System Corruption Scan
    • WinGet Reinstall
    "},{"location":"devdocs/#features_1","title":"Features","text":"
    • All .Net Framework (2,3,4)
    • Disable Legacy F8 Boot Recovery
    • Disable Search Box Web Suggestions in Registry(explorer restart)
    • Enable Daily Registry Backup Task 12.30am
    • Enable Legacy F8 Boot Recovery
    • Enable Search Box Web Suggestions in Registry(explorer restart)
    • HyperV Virtualization
    • Install Features
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Windows Sandbox
    • Windows Subsystem for Linux
    "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
    "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
    "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
    "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
    "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    "},{"location":"userguide/#dns","title":"DNS","text":"

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.
    "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

    "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
    "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
    "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
    • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox
    "},{"location":"userguide/#fixes","title":"Fixes","text":"
    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud
    "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"userguide/#updates","title":"Updates","text":"

    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    "},{"location":"userguide/#microwin","title":"MicroWin","text":"
    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
    "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    "},{"location":"userguide/#options","title":"Options","text":"
    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    "},{"location":"userguide/#customization-options","title":"Customization options","text":"
    • Keep Provisioned Packages: leaving this option unticked (default) will try to remove every operating system package.

    Some packages may remain after processing. This can happen if the packages in question are permanent or have been superseded by newer versions.

    • Keep Appx Packages: leaving this option unticked (default) will try to remove every Microsoft Store app from the Windows image.

    This option will exclude some applications that are essential in the event that you want or need to add a Store app later on.

    • Keep Defender: leaving this option unticked will try to remove every part of Windows Defender, including the Windows Security app.

    Leaving this option unticked is NOT recommended unless you plan to use a third-party antivirus solution on your MicroWin installation. In that regard, don't install AVs with bad reputations or rogueware.

    • Keep Edge: leaving this option unticked will try to remove every part of the Microsoft Edge browser using the best methods available.

    Leaving this option unticked is not recommended because it might break some applications that might depend on the Edge WebView2 runtime. However, if that happens, you can easily reinstall it

    "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    "},{"location":"userguide/#automation","title":"Automation","text":"
    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
    • Have a cup of coffee! Come back when it's done.
    "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

    Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

    Disables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

    Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

    Enables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
    "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
    function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

    Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

    Preview Code
    {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
    "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
          New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

    View the JSON file

    "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

    Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

    Preview Code
    {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

    .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

    Preview Code
    {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
    "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

    Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

    Preview Code
    {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
    "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
    • HypervisorPlatform
    • Microsoft-Hyper-V-All
    • Microsoft-Hyper-V
    • Microsoft-Hyper-V-Tools-All
    • Microsoft-Hyper-V-Management-PowerShell
    • Microsoft-Hyper-V-Hypervisor
    • Microsoft-Hyper-V-Services
    • Microsoft-Hyper-V-Management-Clients
    "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
    Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

    Enables legacy programs from previous versions of windows

    Preview Code
    {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
    "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

    Network File System (NFS) is a mechanism for storing files on a network.

    Preview Code
    {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
    "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
    • ServicesForNFS-ClientOnly
    • ClientForNFS-Infrastructure
    • NFS-Administration
    "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
    nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

    View the JSON file

    "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

    Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

    Preview Code
    {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
    "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
    "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
    function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
    "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
    function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
    "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
    function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
    function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
    "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
    function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
    "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
    function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

    If enable then includes web search results from Bing in your Start Menu search.

    Preview Code
    {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
    function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

    Enable/Disable Dark Mode.

    Preview Code
    {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
    Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

    If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

    Preview Code
    {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
    Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

    If Enabled then Hidden Files will be shown.

    Preview Code
    {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
    function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

    If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

    Preview Code
    {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
    Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

    Toggle the Num Lock key state when your computer starts.

    Preview Code
    {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
    function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

    If enabled then File extensions (e.g., .txt, .jpg) are visible.

    Preview Code
    {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
    function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

    If enabled then Snap preview is disabled when maximize button is hovered.

    Preview Code
    {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
    function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

    If enabled then you will get suggestions to snap other applications in the left over spaces.

    Preview Code
    {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
    function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

    If enabled you can align windows by dragging them. | Relogin Required

    Preview Code
    {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
    function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

    If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

    Preview Code
    {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
    Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

    If Enabled then Task View Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
    function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

    [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

    Preview Code
    {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
    function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

    If Enabled Search Button will be on the taskbar.

    Preview Code
    {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
    function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

    If Enabled then Widgets Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
    function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

    Show detailed messages during the login process for troubleshooting and diagnostics.

    Preview Code
    {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
    function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

    This erases recent docs, clipboard, and run history.

    Preview Code
    {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

    Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

    Preview Code
    {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

    GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

    Preview Code
    {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

    Erases TEMP Folders

    Preview Code
    {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
    Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

    Runs Disk Cleanup on Drive C: and removes old Windows Updates.

    Preview Code
    {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
          cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

    Disables various telemetry options, popups, and other annoyances in Edge.

    Preview Code
    {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

    Enables option to end task when right clicking a program in the taskbar

    Preview Code
    {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

    Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

    Preview Code
    {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
    powercfg.exe /hibernate off\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
    powercfg.exe /hibernate on\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

    Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

    Preview Code
    {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

    Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

    Preview Code
    {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
          Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

    Disables Location Tracking...DUH!

    Preview Code
    {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

    Type: String

    Original Value: Allow

    New Value: Deny

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

    This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

    Preview Code
    {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
    Invoke-WPFTweakPS7 -action \"PS7\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
    Invoke-WPFTweakPS7 -action \"PS5\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
    function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
    Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
    function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
    function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

    This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

    Preview Code
    {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

    Creates a restore point at runtime in case a revert is needed from WinUtil modifications

    Preview Code
    {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
            # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

    Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

    Preview Code
    {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

    Startup Type: Manual

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

    Storage Sense deletes temp files automatically.

    Preview Code
    {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

    Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

    Preview Code
    {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
          bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

    Type: String

    Original Value: 400

    New Value: 400

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

    Type: DWord

    Original Value: 20

    New Value: 30

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

    State: Disabled

    Original State: Enabled

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/","title":"Disable Teredo","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#description","title":"Description","text":"

    Teredo network tunneling is a ipv6 feature that can cause additional latency.

    Preview Code
    {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Teredo\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#invoke-script","title":"Invoke Script","text":"
    netsh interface teredo set state disabled\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#undo-script","title":"Undo Script","text":"
    netsh interface teredo set state default\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

    Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

    Preview Code
    {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
    "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
    function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

    Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

    Preview Code
    {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
          # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
          # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

    USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

    Preview Code
    {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
            $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

    Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

    Preview Code
    {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
          function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
          function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

    Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

    Preview Code
    {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

    Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

    Preview Code
    {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

    Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

    Preview Code
    {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
            Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
          Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

    Disables all Notifications INCLUDING Calendar

    Preview Code
    {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

    Disables IPv6.

    Preview Code
    {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
    Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
    Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

    Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

    Preview Code
    {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
    Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: String

    Original Value: 1

    New Value: 200

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

    Type: DWord

    Original Value: 1

    New Value: 3

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
    function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

    Disables MS Copilot AI built into Windows since 23H2.

    Preview Code
    {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

    Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

    Preview Code
    {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
             Uninstall-WinUtilEdgeBrowser\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
    Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

    Removes the Home and Gallery from explorer and sets This PC as default

    Preview Code
    {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
          REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
          REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

    Moves OneDrive files to Default Home Folders and Uninstalls it.

    Preview Code
    {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
          $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

    Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

    Preview Code
    {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
          New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
          Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

    Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

    Preview Code
    {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
    function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
    function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

    View the JSON file

    "}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

    Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

    "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
    • You will first need to start a Powershell terminal as Admin.
    • Now you can run the following command:
      irm christitus.com/win | iex\n

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
    • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
    • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

    If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

    Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
    • Script doesn't run/PowerShell crashes:
    • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
    • Run:
      Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
    • Run:
      irm christitus.com/win | iex\n
    "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
    • Windows taking longer to shut down:
    • #69 Turn on fast startup: Press Windows key + R, then type:
      control /name Microsoft.PowerOptions /page pageGlobalSettings\n
    • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
      powercfg /H off\n
    • #69 95 #232 Windows Search does not work: Enable Background Apps
    • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

      Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

    • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

    • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

    • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

    "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
    • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

    • Check Battery Health:

    • Open a Command Prompt as an administrator.
    • Run the following command to generate a battery report:
      powercfg /batteryreport /output \"C:\\battery_report.html\"\n
    • Open the generated HTML report to review information about battery health and usage.

    • Review Power Settings:

    • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
    • Adjust power plan settings based on your preferences and usage patterns.
    • Click on \"Additional power settings\" to access advanced power settings.

    • Identify Power-Hungry Apps:

    • Right-click on the taskbar and select \"Task Manager.\"
    • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
    • Consider closing unnecessary background applications.

    • Update Drivers:

    • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
    • Ensure graphics, chipset, and other essential drivers are up to date.

    • Check for Windows Updates:

    • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
    • Check for and install any available updates for your operating system.

    • Reduce Screen Brightness:

    • Adjust screen brightness based on your preferences and lighting conditions.
    • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

    • Battery Saver Mode:

    • Go to \"Settings\" > \"System\" > \"Battery.\"
    • Turn on \"Battery saver\" to limit background activity and conserve power.

    • Check Power Usage in Settings:

    • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
    • Review the list of apps and their power usage.

    • Check Background Apps:

    • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
    • Disable unnecessary apps running in the background.

    • Use Powercfg for Analysis:

      • Open a Command Prompt as an administrator.
      • Run the following command to analyze energy usage and generate a report:
        powercfg /energy /output \"C:\\energy_report.html\"\n
      • Open the generated HTML report to identify energy consumption patterns.
    • Review Event Viewer:

      • Open Event Viewer by searching for it in the Start menu.
      • Navigate to \"Windows Logs\" > \"System.\"
      • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
    • Check Wake-up Sources:

      • Open a Command Prompt as an administrator.
      • Use the command powercfg /requests to identify processes preventing sleep.
      • Check Task Scheduler for tasks waking up the computer.
      • Use the command powercfg /waketimers to view active wake timers.
    • Resource Monitor:

      • Open Resource Monitor from the Start menu.
      • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
    • Windows Settings - Activity History:

      • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
      • Turn off \"Let Windows collect my activities from this PC.\"
    • Network Adapters:

      • Open Device Manager by searching for it in the Start menu.
      • Locate your network adapter, right-click, and go to \"Properties.\"
      • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
    • Review Installed Applications:

      • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
      • Check settings/preferences of individual applications for power-related options.
      • Uninstall unnecessary or problematic software.
    • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

    "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
    • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

    • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

    • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

      sfc /scannow\n

    • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

    • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

    • Press Win + R to open the Run dialog.
    • Type services.msc and press Enter.
    • Locate \"Windows Management Instrumentation\" in the list.
    • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

    • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

    • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

    • Press Win + X and select \"Event Viewer.\"

    • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
    • Look for entries with the source related to WMI or the application use to mount the ISO.

    • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

    • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

    "},{"location":"contribute/","title":"How to Contribute?","text":""},{"location":"contribute/#testing","title":"Testing","text":"
    • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!
    "},{"location":"contribute/#run-the-latest-pre-release","title":"Run the latest pre-release","text":"
    irm christitus.com/windev | iex\n

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    "},{"location":"contribute/#issues","title":"Issues","text":"
    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the \"Issues\" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
    "},{"location":"contribute/#contribute-code","title":"Contribute Code","text":"
    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include \"WPF\" or \"WinUtil\" in the file name so it can be loaded into the runspace.

    "},{"location":"contribute/#walk-through","title":"Walk through","text":"
    • This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
      • Commit through WEB
      • Commit through GitHub Desktop
      • Create a Pull Request
    "},{"location":"contribute/#overview","title":"Overview","text":"
    %%{init: {\"flowchart\": {\"curve\": \"cardinal\"}} }%%\ngraph TD\n\u00a0 A[Fork Project] --> B[Clone Repository];\n\u00a0 B --> C[Create New Branch];\n\u00a0 C --> D[Make Changes];\n\u00a0 D --> G[Test Changes];\n\u00a0 G --> H{Tests Passed?};\n\u00a0 H -->|Yes| E[Commit Changes];\n\u00a0 H -->|No| J[Fix Issues];\n\u00a0 J --> G;\n\u00a0 E --> F[Push Branch];\n\u00a0 F --> K[Create Pull Request];\n\u00a0 K --> L[Fill out PR template];\n  classDef default stroke:#333,stroke-width:4px,font-size:12pt;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    "},{"location":"contribute/#fork-the-repo","title":"Fork the Repo","text":"
    • Fork the WinUtil Repository here to create a copy that will be available in your repository list.
    "},{"location":"contribute/#clone-the-fork","title":"Clone the Fork","text":"

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under \"Your Repositories\" and press \"clone {repo name}\"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    "},{"location":"contribute/#testing-your-changes","title":"Testing your changes","text":"
    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\\Compile.ps1 -run

    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
    "},{"location":"contribute/#committing-the-changes","title":"Committing the changes","text":"
    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:
    • Now, commit your changes once you are happy with the result.
    • Push the changes to upload them to your fork on github.com.
    "},{"location":"contribute/#making-a-pr","title":"Making a PR","text":"
    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the \"/windev\" build.
    • If you do not see your feature in the main \"/win\" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
    • Adobe Debloat
    • Adobe Network Block
    • Disable Background Apps
    • Disable Fullscreen Optimizations
    • Disable Intel MM (vPro LMS)
    • Disable IPv6
    • Disable Microsoft Copilot
    • Disable Notification Tray/Calendar
    • DNS
    • Remove ALL MS Store Apps - NOT RECOMMENDED
    • Remove Home and Gallery from explorer
    • Remove Microsoft Edge
    • Remove OneDrive
    • Run OO Shutup 10
    • Run Tweaks
    • Set Classic Right-Click Menu
    • Set Display for Performance
    • Set Time to UTC (Dual Boot)
    • Undo Selected Tweaks
    "},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
    • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
    • Create Restore Point
    • Debloat Edge
    • Delete Temporary Files
    • Disable Activity History
    • Disable ConsumerFeatures
    • Disable GameDVR
    • Disable Hibernation
    • Disable Homegroup
    • Disable Location Tracking
    • Disable Powershell 7 Telemetry
    • Disable Storage Sense
    • Disable Telemetry
    • Disable Teredo
    • Disable Wifi-Sense
    • Enable End Task With Right Click
    • Run Disk Cleanup
    • Set Hibernation as default (good for laptops)
    • Set Services to Manual
    "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
    • Create WinUtil Shortcut
    "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
    • Bing Search in Start Menu
    • Center Taskbar Items
    • Dark Theme for Windows
    • Detailed BSoD
    • Mouse Acceleration
    • NumLock on Startup
    • Search Button in Taskbar
    • Show File Extensions
    • Show Hidden Files
    • Snap Assist Flyout
    • Snap Assist Suggestion
    • Snap Window
    • Sticky Keys
    • Task View Button in Taskbar
    • Verbose Messages During Logon
    • Widgets Button in Taskbar
    "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
    • Add and Activate Ultimate Performance Profile
    • Remove Ultimate Performance Profile
    "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"devdocs/#fixes","title":"Fixes","text":"
    • Remove Adobe Creative Cloud
    • Reset Network
    • Reset Windows Update
    • Set Up Autologin
    • System Corruption Scan
    • WinGet Reinstall
    "},{"location":"devdocs/#features_1","title":"Features","text":"
    • All .Net Framework (2,3,4)
    • Disable Legacy F8 Boot Recovery
    • Disable Search Box Web Suggestions in Registry(explorer restart)
    • Enable Daily Registry Backup Task 12.30am
    • Enable Legacy F8 Boot Recovery
    • Enable Search Box Web Suggestions in Registry(explorer restart)
    • HyperV Virtualization
    • Install Features
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Windows Sandbox
    • Windows Subsystem for Linux
    "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
    "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
    "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
    "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
    "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    "},{"location":"userguide/#dns","title":"DNS","text":"

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.
    "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

    "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
    "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
    "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
    • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox
    "},{"location":"userguide/#fixes","title":"Fixes","text":"
    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud
    "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"userguide/#updates","title":"Updates","text":"

    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    "},{"location":"userguide/#microwin","title":"MicroWin","text":"
    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
    "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    "},{"location":"userguide/#options","title":"Options","text":"
    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    "},{"location":"userguide/#custom-user-settings","title":"Custom user settings","text":"

    With MicroWin, you can also configure your user before proceeding if you don't want to use the default User account. To do this, simply type the account name (20 characters maximum), and a password. Then, let MicroWin do the rest.

    Info

    Please make sure that you remember your password. MicroWin will configure auto-login settings, so you won't have to enter your password. However, if you are required to enter your password, it's best that you don't forget it.

    "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    "},{"location":"userguide/#automation","title":"Automation","text":"
    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
    • Have a cup of coffee! Come back when it's done.
    "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

    Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

    Disables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

    Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

    Enables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
    "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
    function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

    Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

    Preview Code
    {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
    "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
          New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

    View the JSON file

    "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

    Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

    Preview Code
    {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

    .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

    Preview Code
    {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
    "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

    Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

    Preview Code
    {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
    "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
    • HypervisorPlatform
    • Microsoft-Hyper-V-All
    • Microsoft-Hyper-V
    • Microsoft-Hyper-V-Tools-All
    • Microsoft-Hyper-V-Management-PowerShell
    • Microsoft-Hyper-V-Hypervisor
    • Microsoft-Hyper-V-Services
    • Microsoft-Hyper-V-Management-Clients
    "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
    Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

    Enables legacy programs from previous versions of windows

    Preview Code
    {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
    "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

    Network File System (NFS) is a mechanism for storing files on a network.

    Preview Code
    {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
    "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
    • ServicesForNFS-ClientOnly
    • ClientForNFS-Infrastructure
    • NFS-Administration
    "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
    nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

    View the JSON file

    "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

    Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

    Preview Code
    {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
    "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
    "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
    function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
    "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
    function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
    "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
    function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
    function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
    "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
    function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
    "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
    function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

    If enable then includes web search results from Bing in your Start Menu search.

    Preview Code
    {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
    function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

    Enable/Disable Dark Mode.

    Preview Code
    {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
    Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

    If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

    Preview Code
    {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
    Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

    If Enabled then Hidden Files will be shown.

    Preview Code
    {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
    function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

    If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

    Preview Code
    {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
    Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

    Toggle the Num Lock key state when your computer starts.

    Preview Code
    {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
    function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

    If enabled then File extensions (e.g., .txt, .jpg) are visible.

    Preview Code
    {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
    function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

    If enabled then Snap preview is disabled when maximize button is hovered.

    Preview Code
    {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
    function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

    If enabled then you will get suggestions to snap other applications in the left over spaces.

    Preview Code
    {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
    function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

    If enabled you can align windows by dragging them. | Relogin Required

    Preview Code
    {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
    function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

    If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

    Preview Code
    {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
    Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

    If Enabled then Task View Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
    function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

    [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

    Preview Code
    {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
    function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

    If Enabled Search Button will be on the taskbar.

    Preview Code
    {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
    function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

    If Enabled then Widgets Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
    function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

    Show detailed messages during the login process for troubleshooting and diagnostics.

    Preview Code
    {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
    function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

    This erases recent docs, clipboard, and run history.

    Preview Code
    {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

    Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

    Preview Code
    {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

    GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

    Preview Code
    {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

    Erases TEMP Folders

    Preview Code
    {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
    Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

    Runs Disk Cleanup on Drive C: and removes old Windows Updates.

    Preview Code
    {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
          cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

    Disables various telemetry options, popups, and other annoyances in Edge.

    Preview Code
    {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

    Enables option to end task when right clicking a program in the taskbar

    Preview Code
    {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

    Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

    Preview Code
    {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
    powercfg.exe /hibernate off\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
    powercfg.exe /hibernate on\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

    Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

    Preview Code
    {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

    Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

    Preview Code
    {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
          Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

    Disables Location Tracking...DUH!

    Preview Code
    {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

    Type: String

    Original Value: Allow

    New Value: Deny

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

    This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

    Preview Code
    {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
    Invoke-WPFTweakPS7 -action \"PS7\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
    Invoke-WPFTweakPS7 -action \"PS5\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
    function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
    Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
    function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
    function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

    This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

    Preview Code
    {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

    Creates a restore point at runtime in case a revert is needed from WinUtil modifications

    Preview Code
    {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
            # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

    Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

    Preview Code
    {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

    Startup Type: Manual

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

    Storage Sense deletes temp files automatically.

    Preview Code
    {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

    Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

    Preview Code
    {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
          bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

    Type: String

    Original Value: 400

    New Value: 400

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

    Type: DWord

    Original Value: 20

    New Value: 30

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

    State: Disabled

    Original State: Enabled

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/","title":"Disable Teredo","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#description","title":"Description","text":"

    Teredo network tunneling is a ipv6 feature that can cause additional latency.

    Preview Code
    {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Teredo\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#invoke-script","title":"Invoke Script","text":"
    netsh interface teredo set state disabled\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#undo-script","title":"Undo Script","text":"
    netsh interface teredo set state default\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

    Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

    Preview Code
    {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
    "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
    function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

    Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

    Preview Code
    {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
          # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
          # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

    USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

    Preview Code
    {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
            $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

    Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

    Preview Code
    {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
          function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
          function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

    Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

    Preview Code
    {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

    Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

    Preview Code
    {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

    Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

    Preview Code
    {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
            Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
          Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

    Disables all Notifications INCLUDING Calendar

    Preview Code
    {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

    Disables IPv6.

    Preview Code
    {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
    Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
    Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

    Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

    Preview Code
    {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
    Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: String

    Original Value: 1

    New Value: 200

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

    Type: DWord

    Original Value: 1

    New Value: 3

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
    function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

    Disables MS Copilot AI built into Windows since 23H2.

    Preview Code
    {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

    Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

    Preview Code
    {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
             Uninstall-WinUtilEdgeBrowser\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
    Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

    Removes the Home and Gallery from explorer and sets This PC as default

    Preview Code
    {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
          REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
          REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

    Moves OneDrive files to Default Home Folders and Uninstalls it.

    Preview Code
    {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
          $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

    Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

    Preview Code
    {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
          New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
          Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

    Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

    Preview Code
    {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
    function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
    function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

    View the JSON file

    "}]} \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz index bde1c4a664ddc8ed4055c0ea8f3eab127a52f8bd..663a0de9267d9d1bdec3c48e831fa76575b86a21 100644 GIT binary patch delta 13 Ucmb=gXP58h;9%%JG?Bdm02@jK9RL6T delta 13 Ucmb=gXP58h;Ar@~dm?)U03bF5{r~^~ diff --git a/userguide/index.html b/userguide/index.html index 911caef2f..582d20432 100644 --- a/userguide/index.html +++ b/userguide/index.html @@ -1,2 +1,2 @@ - User Guide - WinUtil Documentation

    Walkthrough

    Install


    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Install Image Install Image

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    Tweaks


    Tweaks Image Tweaks Image

    Run Tweaks

    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.

    Undo Tweaks

    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.

    Essential Tweaks

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    Advanced Tweaks - CAUTION

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    O&O Shutup

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    DNS

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.

    Customize Preferences

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user’s specific needs and preferences.

    Performance Plans

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    Add and activate the Ultimate Performance Profile:

    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.

    Remove Ultimate Performance Profile:

    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.

    Shortcuts

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    Config


    Features

    • Install the most used Windows Features by checking the checkbox and clicking "Install Features" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox

    Fixes

    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud

    Legacy Windows Panels

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts

    Updates


    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    Default (Out of Box) Settings

    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    MicroWin


    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.

    Microwin Microwin

    Basic usage

    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    Options

    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    Customization options
    • Keep Provisioned Packages: leaving this option unticked (default) will try to remove every operating system package.

    Some packages may remain after processing. This can happen if the packages in question are permanent or have been superseded by newer versions.

    • Keep Appx Packages: leaving this option unticked (default) will try to remove every Microsoft Store app from the Windows image.

    This option will exclude some applications that are essential in the event that you want or need to add a Store app later on.

    • Keep Defender: leaving this option unticked will try to remove every part of Windows Defender, including the Windows Security app.

    Leaving this option unticked is NOT recommended unless you plan to use a third-party antivirus solution on your MicroWin installation. In that regard, don't install AVs with bad reputations or rogueware.

    • Keep Edge: leaving this option unticked will try to remove every part of the Microsoft Edge browser using the best methods available.

    Leaving this option unticked is not recommended because it might break some applications that might depend on the Edge WebView2 runtime. However, if that happens, you can easily reinstall it

    Driver integration options
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    Ventoy options
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    Automation

    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click "Get Installed", this will get all installed apps supported by Winutil on the system. GetInstalled GetInstalled

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file. SettingsExport SettingsExport

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex "& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run"
      -
    • Have a cup of coffee! Come back when it's done.
    \ No newline at end of file + User Guide - WinUtil Documentation

    Walkthrough

    Install


    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Install Image Install Image

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    Tweaks


    Tweaks Image Tweaks Image

    Run Tweaks

    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.

    Undo Tweaks

    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.

    Essential Tweaks

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    Advanced Tweaks - CAUTION

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    O&O Shutup

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    DNS

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.

    Customize Preferences

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user’s specific needs and preferences.

    Performance Plans

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    Add and activate the Ultimate Performance Profile:

    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.

    Remove Ultimate Performance Profile:

    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.

    Shortcuts

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    Config


    Features

    • Install the most used Windows Features by checking the checkbox and clicking "Install Features" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox

    Fixes

    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud

    Legacy Windows Panels

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts

    Updates


    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    Default (Out of Box) Settings

    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    MicroWin


    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.

    Microwin Microwin

    Basic usage

    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    Options

    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    Driver integration options
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    Custom user settings

    With MicroWin, you can also configure your user before proceeding if you don't want to use the default User account. To do this, simply type the account name (20 characters maximum), and a password. Then, let MicroWin do the rest.

    Info

    Please make sure that you remember your password. MicroWin will configure auto-login settings, so you won't have to enter your password. However, if you are required to enter your password, it's best that you don't forget it.

    Ventoy options
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    Automation

    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click "Get Installed", this will get all installed apps supported by Winutil on the system. GetInstalled GetInstalled

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file. SettingsExport SettingsExport

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex "& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run"
      +
    • Have a cup of coffee! Come back when it's done.
    \ No newline at end of file From ff66ef1f57cff7fbdec47ddf102d2f80c7bb4399 Mon Sep 17 00:00:00 2001 From: <> Date: Mon, 26 Aug 2024 22:02:23 +0000 Subject: [PATCH 06/10] Deployed cfb9edb with MkDocs version: 1.6.0 --- sitemap.xml.gz | Bin 127 -> 127 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/sitemap.xml.gz b/sitemap.xml.gz index 663a0de9267d9d1bdec3c48e831fa76575b86a21..499b827af7036d87eb16c700eb9d8b8015df99b9 100644 GIT binary patch delta 13 Ucmb=gXP58h;Al8{dLnxT03VP9-~a#s delta 13 Ucmb=gXP58h;9%%JG?Bdm02@jK9RL6T From 681714de5eba01a7b1948ad5a7cf7245df5a863c Mon Sep 17 00:00:00 2001 From: <> Date: Wed, 28 Aug 2024 16:19:01 +0000 Subject: [PATCH 07/10] Deployed 9ae5092 with MkDocs version: 1.6.0 --- dev/tweaks/Essential-Tweaks/IPv46/index.html | 18 ++++++++++++++++++ .../Teredo/index.html | 12 ++++++------ devdocs/index.html | 2 +- search/search_index.json | 2 +- sitemap.xml.gz | Bin 127 -> 127 bytes 5 files changed, 26 insertions(+), 8 deletions(-) create mode 100644 dev/tweaks/Essential-Tweaks/IPv46/index.html rename dev/tweaks/{Essential-Tweaks => z--Advanced-Tweaks---CAUTION}/Teredo/index.html (88%) diff --git a/dev/tweaks/Essential-Tweaks/IPv46/index.html b/dev/tweaks/Essential-Tweaks/IPv46/index.html new file mode 100644 index 000000000..fbe30c478 --- /dev/null +++ b/dev/tweaks/Essential-Tweaks/IPv46/index.html @@ -0,0 +1,18 @@ + Prefer IPv4 over IPv6 - WinUtil Documentation

    Prefer IPv4 over IPv6

    Last Updated: 2024-08-27

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Description

    To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.

    Preview Code
    {
    +  "Content": "Prefer IPv4 over IPv6",
    +  "Description": "To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.",
    +  "category": "Essential Tweaks",
    +  "panel": "1",
    +  "Order": "a005_",
    +  "registry": [
    +    {
    +      "Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Services\\Tcpip6\\Parameters",
    +      "Name": "DisabledComponents",
    +      "Value": "32",
    +      "OriginalValue": "0",
    +      "Type": "DWord"
    +    }
    +  ],
    +  "link": "https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/IPv46"
    +}
    +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DisabledComponents

    Type: DWord

    Original Value: 0

    New Value: 32

    View the JSON file

    \ No newline at end of file diff --git a/dev/tweaks/Essential-Tweaks/Teredo/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html similarity index 88% rename from dev/tweaks/Essential-Tweaks/Teredo/index.html rename to dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html index 41dfce3ca..8cab9ca5b 100644 --- a/dev/tweaks/Essential-Tweaks/Teredo/index.html +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html @@ -1,9 +1,9 @@ - Disable Teredo - WinUtil Documentation

    Disable Teredo

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Description

    Teredo network tunneling is a ipv6 feature that can cause additional latency.

    Preview Code
    {
    + Disable Teredo - WinUtil Documentation      

    Disable Teredo

    Last Updated: 2024-08-27

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Description

    Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games

    Preview Code
    {
       "Content": "Disable Teredo",
    -  "Description": "Teredo network tunneling is a ipv6 feature that can cause additional latency.",
    -  "category": "Essential Tweaks",
    +  "Description": "Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games",
    +  "category": "z__Advanced Tweaks - CAUTION",
       "panel": "1",
    -  "Order": "a005_",
    +  "Order": "a023_",
       "registry": [
         {
           "Path": "HKLM:\\SYSTEM\\CurrentControlSet\\Services\\Tcpip6\\Parameters",
    @@ -19,8 +19,8 @@
       "UndoScript": [
         "netsh interface teredo set state default"
       ],
    -  "link": "https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Teredo"
    +  "link": "https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo"
     }
     

    Invoke Script

    netsh interface teredo set state disabled
     

    Undo Script

    netsh interface teredo set state default
    -

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DisabledComponents

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file +

    Registry Changes

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    Registry Key: DisabledComponents

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    \ No newline at end of file diff --git a/devdocs/index.html b/devdocs/index.html index e656411ea..d136ee9ba 100644 --- a/devdocs/index.html +++ b/devdocs/index.html @@ -1 +1 @@ - Dev Docs - WinUtil Documentation

    Table of Contents

    Tweaks

    z--Advanced-Tweaks---CAUTION

    Essential-Tweaks

    Shortcuts

    Customize-Preferences

    Performance-Plans

    Features

    Legacy-Windows-Panels

    Fixes

    Features

    \ No newline at end of file + Dev Docs - WinUtil Documentation

    Table of Contents

    Tweaks

    z--Advanced-Tweaks---CAUTION

    Essential-Tweaks

    Shortcuts

    Customize-Preferences

    Performance-Plans

    Features

    Legacy-Windows-Panels

    Fixes

    Features

    \ No newline at end of file diff --git a/search/search_index.json b/search/search_index.json index e3aa46cfb..ec154b3c5 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

    Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

    "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
    • You will first need to start a Powershell terminal as Admin.
    • Now you can run the following command:
      irm christitus.com/win | iex\n

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
    • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
    • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

    If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

    Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
    • Script doesn't run/PowerShell crashes:
    • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
    • Run:
      Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
    • Run:
      irm christitus.com/win | iex\n
    "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
    • Windows taking longer to shut down:
    • #69 Turn on fast startup: Press Windows key + R, then type:
      control /name Microsoft.PowerOptions /page pageGlobalSettings\n
    • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
      powercfg /H off\n
    • #69 95 #232 Windows Search does not work: Enable Background Apps
    • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

      Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

    • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

    • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

    • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

    "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
    • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

    • Check Battery Health:

    • Open a Command Prompt as an administrator.
    • Run the following command to generate a battery report:
      powercfg /batteryreport /output \"C:\\battery_report.html\"\n
    • Open the generated HTML report to review information about battery health and usage.

    • Review Power Settings:

    • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
    • Adjust power plan settings based on your preferences and usage patterns.
    • Click on \"Additional power settings\" to access advanced power settings.

    • Identify Power-Hungry Apps:

    • Right-click on the taskbar and select \"Task Manager.\"
    • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
    • Consider closing unnecessary background applications.

    • Update Drivers:

    • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
    • Ensure graphics, chipset, and other essential drivers are up to date.

    • Check for Windows Updates:

    • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
    • Check for and install any available updates for your operating system.

    • Reduce Screen Brightness:

    • Adjust screen brightness based on your preferences and lighting conditions.
    • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

    • Battery Saver Mode:

    • Go to \"Settings\" > \"System\" > \"Battery.\"
    • Turn on \"Battery saver\" to limit background activity and conserve power.

    • Check Power Usage in Settings:

    • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
    • Review the list of apps and their power usage.

    • Check Background Apps:

    • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
    • Disable unnecessary apps running in the background.

    • Use Powercfg for Analysis:

      • Open a Command Prompt as an administrator.
      • Run the following command to analyze energy usage and generate a report:
        powercfg /energy /output \"C:\\energy_report.html\"\n
      • Open the generated HTML report to identify energy consumption patterns.
    • Review Event Viewer:

      • Open Event Viewer by searching for it in the Start menu.
      • Navigate to \"Windows Logs\" > \"System.\"
      • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
    • Check Wake-up Sources:

      • Open a Command Prompt as an administrator.
      • Use the command powercfg /requests to identify processes preventing sleep.
      • Check Task Scheduler for tasks waking up the computer.
      • Use the command powercfg /waketimers to view active wake timers.
    • Resource Monitor:

      • Open Resource Monitor from the Start menu.
      • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
    • Windows Settings - Activity History:

      • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
      • Turn off \"Let Windows collect my activities from this PC.\"
    • Network Adapters:

      • Open Device Manager by searching for it in the Start menu.
      • Locate your network adapter, right-click, and go to \"Properties.\"
      • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
    • Review Installed Applications:

      • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
      • Check settings/preferences of individual applications for power-related options.
      • Uninstall unnecessary or problematic software.
    • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

    "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
    • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

    • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

    • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

      sfc /scannow\n

    • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

    • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

    • Press Win + R to open the Run dialog.
    • Type services.msc and press Enter.
    • Locate \"Windows Management Instrumentation\" in the list.
    • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

    • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

    • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

    • Press Win + X and select \"Event Viewer.\"

    • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
    • Look for entries with the source related to WMI or the application use to mount the ISO.

    • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

    • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

    "},{"location":"contribute/","title":"How to Contribute?","text":""},{"location":"contribute/#testing","title":"Testing","text":"
    • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!
    "},{"location":"contribute/#run-the-latest-pre-release","title":"Run the latest pre-release","text":"
    irm christitus.com/windev | iex\n

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    "},{"location":"contribute/#issues","title":"Issues","text":"
    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the \"Issues\" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
    "},{"location":"contribute/#contribute-code","title":"Contribute Code","text":"
    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include \"WPF\" or \"WinUtil\" in the file name so it can be loaded into the runspace.

    "},{"location":"contribute/#walk-through","title":"Walk through","text":"
    • This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
      • Commit through WEB
      • Commit through GitHub Desktop
      • Create a Pull Request
    "},{"location":"contribute/#overview","title":"Overview","text":"
    %%{init: {\"flowchart\": {\"curve\": \"cardinal\"}} }%%\ngraph TD\n\u00a0 A[Fork Project] --> B[Clone Repository];\n\u00a0 B --> C[Create New Branch];\n\u00a0 C --> D[Make Changes];\n\u00a0 D --> G[Test Changes];\n\u00a0 G --> H{Tests Passed?};\n\u00a0 H -->|Yes| E[Commit Changes];\n\u00a0 H -->|No| J[Fix Issues];\n\u00a0 J --> G;\n\u00a0 E --> F[Push Branch];\n\u00a0 F --> K[Create Pull Request];\n\u00a0 K --> L[Fill out PR template];\n  classDef default stroke:#333,stroke-width:4px,font-size:12pt;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    "},{"location":"contribute/#fork-the-repo","title":"Fork the Repo","text":"
    • Fork the WinUtil Repository here to create a copy that will be available in your repository list.
    "},{"location":"contribute/#clone-the-fork","title":"Clone the Fork","text":"

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under \"Your Repositories\" and press \"clone {repo name}\"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    "},{"location":"contribute/#testing-your-changes","title":"Testing your changes","text":"
    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\\Compile.ps1 -run

    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
    "},{"location":"contribute/#committing-the-changes","title":"Committing the changes","text":"
    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:
    • Now, commit your changes once you are happy with the result.
    • Push the changes to upload them to your fork on github.com.
    "},{"location":"contribute/#making-a-pr","title":"Making a PR","text":"
    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the \"/windev\" build.
    • If you do not see your feature in the main \"/win\" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
    • Adobe Debloat
    • Adobe Network Block
    • Disable Background Apps
    • Disable Fullscreen Optimizations
    • Disable Intel MM (vPro LMS)
    • Disable IPv6
    • Disable Microsoft Copilot
    • Disable Notification Tray/Calendar
    • DNS
    • Remove ALL MS Store Apps - NOT RECOMMENDED
    • Remove Home and Gallery from explorer
    • Remove Microsoft Edge
    • Remove OneDrive
    • Run OO Shutup 10
    • Run Tweaks
    • Set Classic Right-Click Menu
    • Set Display for Performance
    • Set Time to UTC (Dual Boot)
    • Undo Selected Tweaks
    "},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
    • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
    • Create Restore Point
    • Debloat Edge
    • Delete Temporary Files
    • Disable Activity History
    • Disable ConsumerFeatures
    • Disable GameDVR
    • Disable Hibernation
    • Disable Homegroup
    • Disable Location Tracking
    • Disable Powershell 7 Telemetry
    • Disable Storage Sense
    • Disable Telemetry
    • Disable Teredo
    • Disable Wifi-Sense
    • Enable End Task With Right Click
    • Run Disk Cleanup
    • Set Hibernation as default (good for laptops)
    • Set Services to Manual
    "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
    • Create WinUtil Shortcut
    "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
    • Bing Search in Start Menu
    • Center Taskbar Items
    • Dark Theme for Windows
    • Detailed BSoD
    • Mouse Acceleration
    • NumLock on Startup
    • Search Button in Taskbar
    • Show File Extensions
    • Show Hidden Files
    • Snap Assist Flyout
    • Snap Assist Suggestion
    • Snap Window
    • Sticky Keys
    • Task View Button in Taskbar
    • Verbose Messages During Logon
    • Widgets Button in Taskbar
    "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
    • Add and Activate Ultimate Performance Profile
    • Remove Ultimate Performance Profile
    "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"devdocs/#fixes","title":"Fixes","text":"
    • Remove Adobe Creative Cloud
    • Reset Network
    • Reset Windows Update
    • Set Up Autologin
    • System Corruption Scan
    • WinGet Reinstall
    "},{"location":"devdocs/#features_1","title":"Features","text":"
    • All .Net Framework (2,3,4)
    • Disable Legacy F8 Boot Recovery
    • Disable Search Box Web Suggestions in Registry(explorer restart)
    • Enable Daily Registry Backup Task 12.30am
    • Enable Legacy F8 Boot Recovery
    • Enable Search Box Web Suggestions in Registry(explorer restart)
    • HyperV Virtualization
    • Install Features
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Windows Sandbox
    • Windows Subsystem for Linux
    "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
    "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
    "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
    "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
    "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    "},{"location":"userguide/#dns","title":"DNS","text":"

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.
    "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

    "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
    "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
    "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
    • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox
    "},{"location":"userguide/#fixes","title":"Fixes","text":"
    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud
    "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"userguide/#updates","title":"Updates","text":"

    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    "},{"location":"userguide/#microwin","title":"MicroWin","text":"
    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
    "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    "},{"location":"userguide/#options","title":"Options","text":"
    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    "},{"location":"userguide/#custom-user-settings","title":"Custom user settings","text":"

    With MicroWin, you can also configure your user before proceeding if you don't want to use the default User account. To do this, simply type the account name (20 characters maximum), and a password. Then, let MicroWin do the rest.

    Info

    Please make sure that you remember your password. MicroWin will configure auto-login settings, so you won't have to enter your password. However, if you are required to enter your password, it's best that you don't forget it.

    "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    "},{"location":"userguide/#automation","title":"Automation","text":"
    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
    • Have a cup of coffee! Come back when it's done.
    "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

    Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

    Disables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

    Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

    Enables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
    "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
    function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

    Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

    Preview Code
    {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
    "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
          New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

    View the JSON file

    "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

    Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

    Preview Code
    {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

    .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

    Preview Code
    {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
    "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

    Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

    Preview Code
    {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
    "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
    • HypervisorPlatform
    • Microsoft-Hyper-V-All
    • Microsoft-Hyper-V
    • Microsoft-Hyper-V-Tools-All
    • Microsoft-Hyper-V-Management-PowerShell
    • Microsoft-Hyper-V-Hypervisor
    • Microsoft-Hyper-V-Services
    • Microsoft-Hyper-V-Management-Clients
    "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
    Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

    Enables legacy programs from previous versions of windows

    Preview Code
    {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
    "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

    Network File System (NFS) is a mechanism for storing files on a network.

    Preview Code
    {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
    "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
    • ServicesForNFS-ClientOnly
    • ClientForNFS-Infrastructure
    • NFS-Administration
    "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
    nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

    View the JSON file

    "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

    Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

    Preview Code
    {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
    "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
    "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
    function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
    "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
    function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
    "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
    function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
    function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
    "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
    function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
    "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
    function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

    If enable then includes web search results from Bing in your Start Menu search.

    Preview Code
    {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
    function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

    Enable/Disable Dark Mode.

    Preview Code
    {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
    Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

    If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

    Preview Code
    {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
    Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

    If Enabled then Hidden Files will be shown.

    Preview Code
    {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
    function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

    If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

    Preview Code
    {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
    Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

    Toggle the Num Lock key state when your computer starts.

    Preview Code
    {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
    function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

    If enabled then File extensions (e.g., .txt, .jpg) are visible.

    Preview Code
    {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
    function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

    If enabled then Snap preview is disabled when maximize button is hovered.

    Preview Code
    {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
    function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

    If enabled then you will get suggestions to snap other applications in the left over spaces.

    Preview Code
    {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
    function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

    If enabled you can align windows by dragging them. | Relogin Required

    Preview Code
    {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
    function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

    If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

    Preview Code
    {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
    Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

    If Enabled then Task View Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
    function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

    [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

    Preview Code
    {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
    function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

    If Enabled Search Button will be on the taskbar.

    Preview Code
    {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
    function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

    If Enabled then Widgets Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
    function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

    Show detailed messages during the login process for troubleshooting and diagnostics.

    Preview Code
    {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
    function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

    This erases recent docs, clipboard, and run history.

    Preview Code
    {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

    Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

    Preview Code
    {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

    GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

    Preview Code
    {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

    Erases TEMP Folders

    Preview Code
    {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
    Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

    Runs Disk Cleanup on Drive C: and removes old Windows Updates.

    Preview Code
    {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
          cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

    Disables various telemetry options, popups, and other annoyances in Edge.

    Preview Code
    {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

    Enables option to end task when right clicking a program in the taskbar

    Preview Code
    {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

    Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

    Preview Code
    {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
    powercfg.exe /hibernate off\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
    powercfg.exe /hibernate on\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

    Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

    Preview Code
    {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

    Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

    Preview Code
    {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
          Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

    Disables Location Tracking...DUH!

    Preview Code
    {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

    Type: String

    Original Value: Allow

    New Value: Deny

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

    This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

    Preview Code
    {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
    Invoke-WPFTweakPS7 -action \"PS7\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
    Invoke-WPFTweakPS7 -action \"PS5\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
    function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
    Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
    function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
    function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

    This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

    Preview Code
    {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

    Creates a restore point at runtime in case a revert is needed from WinUtil modifications

    Preview Code
    {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
            # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

    Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

    Preview Code
    {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

    Startup Type: Manual

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

    Storage Sense deletes temp files automatically.

    Preview Code
    {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

    Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

    Preview Code
    {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
          bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

    Type: String

    Original Value: 400

    New Value: 400

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

    Type: DWord

    Original Value: 20

    New Value: 30

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

    State: Disabled

    Original State: Enabled

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/","title":"Disable Teredo","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#description","title":"Description","text":"

    Teredo network tunneling is a ipv6 feature that can cause additional latency.

    Preview Code
    {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Teredo\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#invoke-script","title":"Invoke Script","text":"
    netsh interface teredo set state disabled\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#undo-script","title":"Undo Script","text":"
    netsh interface teredo set state default\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

    Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

    Preview Code
    {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
    "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
    function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

    Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

    Preview Code
    {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
          # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
          # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

    USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

    Preview Code
    {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
            $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

    Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

    Preview Code
    {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
          function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
          function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

    Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

    Preview Code
    {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

    Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

    Preview Code
    {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

    Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

    Preview Code
    {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
            Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
          Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

    Disables all Notifications INCLUDING Calendar

    Preview Code
    {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

    Disables IPv6.

    Preview Code
    {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
    Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
    Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

    Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

    Preview Code
    {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
    Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: String

    Original Value: 1

    New Value: 200

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

    Type: DWord

    Original Value: 1

    New Value: 3

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
    function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

    Disables MS Copilot AI built into Windows since 23H2.

    Preview Code
    {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

    Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

    Preview Code
    {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
             Uninstall-WinUtilEdgeBrowser\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
    Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

    Removes the Home and Gallery from explorer and sets This PC as default

    Preview Code
    {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
          REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
          REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

    Moves OneDrive files to Default Home Folders and Uninstalls it.

    Preview Code
    {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
          $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

    Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

    Preview Code
    {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
          New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
          Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

    Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

    Preview Code
    {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
    function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
    function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

    View the JSON file

    "}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

    Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

    "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
    • You will first need to start a Powershell terminal as Admin.
    • Now you can run the following command:
      irm christitus.com/win | iex\n

    Info

    WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

    "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
    • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
    • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

    If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

    Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
    • Script doesn't run/PowerShell crashes:
    • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
    • Run:
      Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
    • Run:
      irm christitus.com/win | iex\n
    "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
    • Windows taking longer to shut down:
    • #69 Turn on fast startup: Press Windows key + R, then type:
      control /name Microsoft.PowerOptions /page pageGlobalSettings\n
    • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
      powercfg /H off\n
    • #69 95 #232 Windows Search does not work: Enable Background Apps
    • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

      Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

    • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

    • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

    • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

    "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
    • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

    • Check Battery Health:

    • Open a Command Prompt as an administrator.
    • Run the following command to generate a battery report:
      powercfg /batteryreport /output \"C:\\battery_report.html\"\n
    • Open the generated HTML report to review information about battery health and usage.

    • Review Power Settings:

    • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
    • Adjust power plan settings based on your preferences and usage patterns.
    • Click on \"Additional power settings\" to access advanced power settings.

    • Identify Power-Hungry Apps:

    • Right-click on the taskbar and select \"Task Manager.\"
    • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
    • Consider closing unnecessary background applications.

    • Update Drivers:

    • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
    • Ensure graphics, chipset, and other essential drivers are up to date.

    • Check for Windows Updates:

    • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
    • Check for and install any available updates for your operating system.

    • Reduce Screen Brightness:

    • Adjust screen brightness based on your preferences and lighting conditions.
    • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

    • Battery Saver Mode:

    • Go to \"Settings\" > \"System\" > \"Battery.\"
    • Turn on \"Battery saver\" to limit background activity and conserve power.

    • Check Power Usage in Settings:

    • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
    • Review the list of apps and their power usage.

    • Check Background Apps:

    • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
    • Disable unnecessary apps running in the background.

    • Use Powercfg for Analysis:

      • Open a Command Prompt as an administrator.
      • Run the following command to analyze energy usage and generate a report:
        powercfg /energy /output \"C:\\energy_report.html\"\n
      • Open the generated HTML report to identify energy consumption patterns.
    • Review Event Viewer:

      • Open Event Viewer by searching for it in the Start menu.
      • Navigate to \"Windows Logs\" > \"System.\"
      • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
    • Check Wake-up Sources:

      • Open a Command Prompt as an administrator.
      • Use the command powercfg /requests to identify processes preventing sleep.
      • Check Task Scheduler for tasks waking up the computer.
      • Use the command powercfg /waketimers to view active wake timers.
    • Resource Monitor:

      • Open Resource Monitor from the Start menu.
      • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
    • Windows Settings - Activity History:

      • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
      • Turn off \"Let Windows collect my activities from this PC.\"
    • Network Adapters:

      • Open Device Manager by searching for it in the Start menu.
      • Locate your network adapter, right-click, and go to \"Properties.\"
      • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
    • Review Installed Applications:

      • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
      • Check settings/preferences of individual applications for power-related options.
      • Uninstall unnecessary or problematic software.
    • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

    "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
    • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

    • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

    • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

      sfc /scannow\n

    • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

    • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

    • Press Win + R to open the Run dialog.
    • Type services.msc and press Enter.
    • Locate \"Windows Management Instrumentation\" in the list.
    • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

    • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

    • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

    • Press Win + X and select \"Event Viewer.\"

    • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
    • Look for entries with the source related to WMI or the application use to mount the ISO.

    • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

    • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

    "},{"location":"contribute/","title":"How to Contribute?","text":""},{"location":"contribute/#testing","title":"Testing","text":"
    • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!
    "},{"location":"contribute/#run-the-latest-pre-release","title":"Run the latest pre-release","text":"
    irm christitus.com/windev | iex\n

    Keep in mind

    This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

    "},{"location":"contribute/#issues","title":"Issues","text":"
    • If you encounter any challenges or problems with the script, I kindly request that you submit them via the \"Issues\" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
    "},{"location":"contribute/#contribute-code","title":"Contribute Code","text":"
    • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

    • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

    Important

    Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

    • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

    • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

    Note

    When creating a function, please include \"WPF\" or \"WinUtil\" in the file name so it can be loaded into the runspace.

    "},{"location":"contribute/#walk-through","title":"Walk through","text":"
    • This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
      • Commit through WEB
      • Commit through GitHub Desktop
      • Create a Pull Request
    "},{"location":"contribute/#overview","title":"Overview","text":"
    %%{init: {\"flowchart\": {\"curve\": \"cardinal\"}} }%%\ngraph TD\n\u00a0 A[Fork Project] --> B[Clone Repository];\n\u00a0 B --> C[Create New Branch];\n\u00a0 C --> D[Make Changes];\n\u00a0 D --> G[Test Changes];\n\u00a0 G --> H{Tests Passed?};\n\u00a0 H -->|Yes| E[Commit Changes];\n\u00a0 H -->|No| J[Fix Issues];\n\u00a0 J --> G;\n\u00a0 E --> F[Push Branch];\n\u00a0 F --> K[Create Pull Request];\n\u00a0 K --> L[Fill out PR template];\n  classDef default stroke:#333,stroke-width:4px,font-size:12pt;

    Info

    This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

    "},{"location":"contribute/#fork-the-repo","title":"Fork the Repo","text":"
    • Fork the WinUtil Repository here to create a copy that will be available in your repository list.
    "},{"location":"contribute/#clone-the-fork","title":"Clone the Fork","text":"

    Tip

    While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

    • Install GitHub Desktop if it is not already installed.
    • Log in using the same GitHub account you used to fork WinUtil.
    • Choose the fork under \"Your Repositories\" and press \"clone {repo name}\"
    • Create a new branch and name it something relatable to your changes.

    • Now you can modify WinUtil to your liking using your preferred text editor.

    "},{"location":"contribute/#testing-your-changes","title":"Testing your changes","text":"
    • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

    • Change the directory where you are running the commands to the forked project.

    • cd {path to the folder with the compile.ps1}
    • Run the following command to compile and run WinUtil:
    • .\\Compile.ps1 -run

    • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
    "},{"location":"contribute/#committing-the-changes","title":"Committing the changes","text":"
    • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:
    • Now, commit your changes once you are happy with the result.
    • Push the changes to upload them to your fork on github.com.
    "},{"location":"contribute/#making-a-pr","title":"Making a PR","text":"
    • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the \"/windev\" build.
    • If you do not see your feature in the main \"/win\" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
    • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
    "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
    • Adobe Debloat
    • Adobe Network Block
    • Disable Background Apps
    • Disable Fullscreen Optimizations
    • Disable Intel MM (vPro LMS)
    • Disable IPv6
    • Disable Microsoft Copilot
    • Disable Notification Tray/Calendar
    • Disable Teredo
    • DNS
    • Remove ALL MS Store Apps - NOT RECOMMENDED
    • Remove Home and Gallery from explorer
    • Remove Microsoft Edge
    • Remove OneDrive
    • Run OO Shutup 10
    • Run Tweaks
    • Set Classic Right-Click Menu
    • Set Display for Performance
    • Set Time to UTC (Dual Boot)
    • Undo Selected Tweaks
    "},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
    • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
    • Create Restore Point
    • Debloat Edge
    • Delete Temporary Files
    • Prefer IPv4 over IPv6
    • Disable Activity History
    • Disable ConsumerFeatures
    • Disable GameDVR
    • Disable Hibernation
    • Disable Homegroup
    • Disable Location Tracking
    • Disable Powershell 7 Telemetry
    • Disable Storage Sense
    • Disable Telemetry
    • Disable Wifi-Sense
    • Enable End Task With Right Click
    • Run Disk Cleanup
    • Set Hibernation as default (good for laptops)
    • Set Services to Manual
    "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
    • Create WinUtil Shortcut
    "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
    • Bing Search in Start Menu
    • Center Taskbar Items
    • Dark Theme for Windows
    • Detailed BSoD
    • Mouse Acceleration
    • NumLock on Startup
    • Search Button in Taskbar
    • Show File Extensions
    • Show Hidden Files
    • Snap Assist Flyout
    • Snap Assist Suggestion
    • Snap Window
    • Sticky Keys
    • Task View Button in Taskbar
    • Verbose Messages During Logon
    • Widgets Button in Taskbar
    "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
    • Add and Activate Ultimate Performance Profile
    • Remove Ultimate Performance Profile
    "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"devdocs/#fixes","title":"Fixes","text":"
    • Remove Adobe Creative Cloud
    • Reset Network
    • Reset Windows Update
    • Set Up Autologin
    • System Corruption Scan
    • WinGet Reinstall
    "},{"location":"devdocs/#features_1","title":"Features","text":"
    • All .Net Framework (2,3,4)
    • Disable Legacy F8 Boot Recovery
    • Disable Search Box Web Suggestions in Registry(explorer restart)
    • Enable Daily Registry Backup Task 12.30am
    • Enable Legacy F8 Boot Recovery
    • Enable Search Box Web Suggestions in Registry(explorer restart)
    • HyperV Virtualization
    • Install Features
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Windows Sandbox
    • Windows Subsystem for Linux
    "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
    • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
    "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
    • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
    "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
    • Choose the programs you want to install or upgrade.
      • For programs not currently installed, this action will install them.
      • For programs already installed, this action will update them to the latest version.
    • Click the Install/Upgrade Selected button to start the installation or upgrade process.
    • Simply press the Upgrade All button.
    • This will upgrade all applicable programs that are installed without the need for individual selection.
    • Select the programs you wish to uninstall.
    • Click the Uninstall Selected button to remove the selected programs.
    • Click the Get Installed button.
    • This will scan for and select all installed programs in WinUtil that WinGet supports.
    • Click the Clear Selection button.
    • This will unselect all checked programs.

    Tip

    If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

    "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
    • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
    • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
    • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
    "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
    • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
    • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
    • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
    "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

    Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

    "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

    Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

    "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

    O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

    "},{"location":"userguide/#dns","title":"DNS","text":"

    The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

    • Default: Uses the default DNS settings configured by your ISP or network.
    • DHCP: Automatically acquires DNS settings from the DHCP server.
    • Google: A reliable and fast DNS service provided by Google.
    • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
    • Cloudflare_Malware: Provides additional protection by blocking malware sites.
    • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
    • Level3: Another fast and reliable DNS service option.
    • Open_DNS: Offers customizable filtering and enhanced security features.
    • Quad9: Focuses on security by blocking known malicious domains.
    "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

    The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

    "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

    The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

    "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
    • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
    "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
    • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
    "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

    The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

    "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
    • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

    • All .Net Frameworks (2, 3, 4)

    • HyperV Virtualization
    • Legacy Media (WMP, DirectPlay)
    • NFS - Network File System
    • Enable Search Box Web Suggestions in Registry (explorer restart)
    • Disables Search Box Web Suggestions in Registry (explorer restart)
    • Enable Daily Registry Backup Task 12:30am
    • Enable Legacy F8 Boot Recovery
    • Disable Legacy F8 Boot Recovery
    • Windows Subsystem for Linux
    • Windows Sandbox
    "},{"location":"userguide/#fixes","title":"Fixes","text":"
    • Quick fixes for your system if you are having issues.

    • Set Up Autologin

    • Reset Windows Update
    • Reset Network
    • System Corruption Scan
    • WinGet Reinstall
    • Remove Adobe Creative Cloud
    "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

    Open old-school Windows panels directly from WinUtil. Following Panels are available:

    • Control Panel
    • Network Connections
    • Power Panel
    • Region
    • Sound Settings
    • System Properties
    • User Accounts
    "},{"location":"userguide/#updates","title":"Updates","text":"

    The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

    "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
    • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
    • Functionality: It will remove any custom Windows update settings previously applied.
    • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
    "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
    • Description: This is the recommended setting for all computers.
    • Update Schedule:
      • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
      • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
    • Rationale:
      • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
      • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
    "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
    • Description: This setting completely disables all Windows updates.
    • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
    • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
    • Note: It is strongly advised against using this setting due to the heightened security risks.

    Bug

    The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

    "},{"location":"userguide/#microwin","title":"MicroWin","text":"
    • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
    "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
    1. Specify the source Windows ISO to customize.

      • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
    2. Configure the debloat process.

    3. Specify the target location for the new ISO file.
    4. Let the magic happen!

    Heads-up

    This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

    "},{"location":"userguide/#options","title":"Options","text":"
    • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

    Info

    OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

    • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
    • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

    By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

    "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
    • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
    • Import drivers from the current system will add every third-party driver that is present in your active installation.

    This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

    "},{"location":"userguide/#custom-user-settings","title":"Custom user settings","text":"

    With MicroWin, you can also configure your user before proceeding if you don't want to use the default User account. To do this, simply type the account name (20 characters maximum), and a password. Then, let MicroWin do the rest.

    Info

    Please make sure that you remember your password. MicroWin will configure auto-login settings, so you won't have to enter your password. However, if you are required to enter your password, it's best that you don't forget it.

    "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
    • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

    Info

    Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

    "},{"location":"userguide/#automation","title":"Automation","text":"
    • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

    • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

    • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

    • Copy this file to a USB or somewhere you can use it after Windows installation.

    Tip

    Use the Microwin tab to create a custom Windows image & install the Windows image.

    • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
      iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
    • Have a cup of coffee! Come back when it's done.
    "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

    Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

    Disables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

    Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

    Preview Code
    {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
    "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

    Enables web suggestions when searching using Windows Search.

    Preview Code
    {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
    "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
          If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

    View the JSON file

    "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
    "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
    function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

    Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

    Preview Code
    {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
    "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
          New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

    View the JSON file

    "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

    Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

    Preview Code
    {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

    .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

    Preview Code
    {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
    "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
    • NetFx4-AdvSrvs
    • NetFx3

    View the JSON file

    "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

    Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

    Preview Code
    {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
    "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
    • HypervisorPlatform
    • Microsoft-Hyper-V-All
    • Microsoft-Hyper-V
    • Microsoft-Hyper-V-Tools-All
    • Microsoft-Hyper-V-Management-PowerShell
    • Microsoft-Hyper-V-Hypervisor
    • Microsoft-Hyper-V-Services
    • Microsoft-Hyper-V-Management-Clients
    "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
    Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

    View the JSON file

    "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

    Enables legacy programs from previous versions of windows

    Preview Code
    {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
    "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
    • WindowsMediaPlayer
    • MediaPlayback
    • DirectPlay
    • LegacyComponents

    View the JSON file

    "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

    Network File System (NFS) is a mechanism for storing files on a network.

    Preview Code
    {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
    "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
    • ServicesForNFS-ClientOnly
    • ClientForNFS-Infrastructure
    • NFS-Administration
    "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
    nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

    View the JSON file

    "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

    Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

    Preview Code
    {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
    "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

    Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

    You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

    "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
    • VirtualMachinePlatform
    • Microsoft-Windows-Subsystem-Linux

    View the JSON file

    "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
    "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
    function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
    "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
    function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
    "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
    function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
    "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
    function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
    "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
    function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

    View the JSON file

    "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
    "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
    function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
    "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
    function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

    If enable then includes web search results from Bing in your Start Menu search.

    Preview Code
    {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
    function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

    Enable/Disable Dark Mode.

    Preview Code
    {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
    Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

    If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

    Preview Code
    {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
    Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

    If Enabled then Hidden Files will be shown.

    Preview Code
    {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
    function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

    If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

    Preview Code
    {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
    Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

    Toggle the Num Lock key state when your computer starts.

    Preview Code
    {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
    function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

    If enabled then File extensions (e.g., .txt, .jpg) are visible.

    Preview Code
    {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
    function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

    If enabled then Snap preview is disabled when maximize button is hovered.

    Preview Code
    {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
    function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

    If enabled then you will get suggestions to snap other applications in the left over spaces.

    Preview Code
    {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
    function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

    If enabled you can align windows by dragging them. | Relogin Required

    Preview Code
    {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
    function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

    If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

    Preview Code
    {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
    Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

    If Enabled then Task View Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
    function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

    [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

    Preview Code
    {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
    function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

    If Enabled Search Button will be on the taskbar.

    Preview Code
    {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
    function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

    If Enabled then Widgets Button in Taskbar will be shown.

    Preview Code
    {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
    function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

    Show detailed messages during the login process for troubleshooting and diagnostics.

    Preview Code
    {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
    "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
    function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

    This erases recent docs, clipboard, and run history.

    Preview Code
    {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

    Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

    Preview Code
    {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

    GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

    Preview Code
    {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

    Erases TEMP Folders

    Preview Code
    {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
    Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

    Runs Disk Cleanup on Drive C: and removes old Windows Updates.

    Preview Code
    {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
          cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

    Disables various telemetry options, popups, and other annoyances in Edge.

    Preview Code
    {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

    Enables option to end task when right clicking a program in the taskbar

    Preview Code
    {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
    $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

    Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

    Preview Code
    {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
    powercfg.exe /hibernate off\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
    powercfg.exe /hibernate on\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

    Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

    Preview Code
    {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/","title":"Prefer IPv4 over IPv6","text":"

    Last Updated: 2024-08-27

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/#description","title":"Description","text":"

    To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.

    Preview Code
    {\n  \"Content\": \"Prefer IPv4 over IPv6\",\n  \"Description\": \"To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"32\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/IPv46\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 32

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

    Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

    Preview Code
    {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
          Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

    Type: DWord

    Original Value: 0

    New Value: 2

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

    Disables Location Tracking...DUH!

    Preview Code
    {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

    Type: String

    Original Value: Allow

    New Value: Deny

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

    This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

    Preview Code
    {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
    Invoke-WPFTweakPS7 -action \"PS7\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
    Invoke-WPFTweakPS7 -action \"PS5\"\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
    function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
    Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
    function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
    function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

    This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

    Preview Code
    {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
    [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

    Creates a restore point at runtime in case a revert is needed from WinUtil modifications

    Preview Code
    {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
            # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

    Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

    Preview Code
    {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

    Startup Type: Disabled

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

    Startup Type: Manual

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

    Startup Type: Disabled

    Original Type: Disabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

    Startup Type: Automatic

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

    Startup Type: AutomaticDelayedStart

    Original Type: Automatic

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

    Startup Type: Manual

    Original Type: Manual

    "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

    Startup Type: Manual

    Original Type: Manual

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

    Storage Sense deletes temp files automatically.

    Preview Code
    {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
    Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

    Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

    Preview Code
    {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
          bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

    Type: DWord

    Original Value: 1

    New Value: 4294967295

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

    Type: DWord

    Original Value: 0

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

    Type: String

    Original Value: 400

    New Value: 400

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

    Type: DWord

    Original Value: 20

    New Value: 30

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 2

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

    Type: DWord

    Original Value: 1

    New Value: 1

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

    Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

    You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

    State: Disabled

    Original State: Enabled

    "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

    State: Disabled

    Original State: Enabled

    View the JSON file

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

    Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

    Preview Code
    {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
    "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
    Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
    "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
    function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

    Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

    Preview Code
    {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
          # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
          # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

    USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

    Preview Code
    {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
            $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

    Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

    Preview Code
    {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
          function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
          function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

    Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

    You can find information about services on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

    Startup Type: Disabled

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

    Startup Type: Manual

    Original Type: Automatic

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

    Startup Type: Manual

    Original Type: Automatic

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

    Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

    Preview Code
    {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

    Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

    Preview Code
    {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

    Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

    Preview Code
    {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
            Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
          Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

    Disables all Notifications INCLUDING Calendar

    Preview Code
    {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

    Disables IPv6.

    Preview Code
    {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
    Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
    Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 255

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

    Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

    Preview Code
    {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
    Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
    Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

    Type: String

    Original Value: 1

    New Value: 200

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

    Type: String

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

    Type: DWord

    Original Value: 1

    New Value: 3

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
    function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

    Disables MS Copilot AI built into Windows since 23H2.

    Preview Code
    {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
          Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

    Type: DWord

    Original Value: 1

    New Value: 0

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

    Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

    Preview Code
    {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
             Uninstall-WinUtilEdgeBrowser\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
    Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

    Removes the Home and Gallery from explorer and sets This PC as default

    Preview Code
    {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
          REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
          REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

    Moves OneDrive files to Default Home Folders and Uninstalls it.

    Preview Code
    {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
          $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
          Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

    Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

    Preview Code
    {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
          New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
          Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/","title":"Disable Teredo","text":"

    Last Updated: 2024-08-27

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#description","title":"Description","text":"

    Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games

    Preview Code
    {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#invoke-script","title":"Invoke Script","text":"
    netsh interface teredo set state disabled\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#undo-script","title":"Undo Script","text":"
    netsh interface teredo set state default\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

    Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

    Preview Code
    {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

    Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

    You can find information about the registry on Wikipedia and Microsoft's Website.

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

    Type: DWord

    Original Value: 0

    New Value: 1

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
    function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
    function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

    View the JSON file

    "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

    Last Updated: 2024-08-07

    Info

    The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

    Preview Code
    {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

    View the JSON file

    "}]} \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz index 499b827af7036d87eb16c700eb9d8b8015df99b9..adb715f34b16fa3f8a855d280b3339828fe301ad 100644 GIT binary patch delta 13 Ucmb=gXP58h;AqG=H<7&p03FK&h5!Hn delta 13 Ucmb=gXP58h;Al8{dLnxT03VP9-~a#s From 9585dcf691ec57c07d89f5d3b81b193365513cb8 Mon Sep 17 00:00:00 2001 From: <> Date: Thu, 29 Aug 2024 00:52:43 +0000 Subject: [PATCH 08/10] Deployed ece57f8 with MkDocs version: 1.6.0 --- 404.html | 2 +- KnownIssues/index.html | 2 +- contribute/index.html | 2 +- .../Features/DisableLegacyRecovery/index.html | 2 +- .../DisableSearchSuggestions/index.html | 2 +- .../Features/EnableLegacyRecovery/index.html | 2 +- .../Features/EnableSearchSuggestions/index.html | 2 +- dev/features/Features/Install/index.html | 2 +- dev/features/Features/RegBackup/index.html | 2 +- dev/features/Features/Sandbox/index.html | 2 +- dev/features/Features/dotnet/index.html | 2 +- dev/features/Features/hyperv/index.html | 2 +- dev/features/Features/legacymedia/index.html | 2 +- dev/features/Features/nfs/index.html | 2 +- dev/features/Features/wsl/index.html | 2 +- dev/features/Fixes/Autologin/index.html | 2 +- dev/features/Fixes/DISM/index.html | 2 +- dev/features/Fixes/Network/index.html | 2 +- .../Fixes/RunAdobeCCCleanerTool/index.html | 2 +- dev/features/Fixes/Update/index.html | 2 +- dev/features/Fixes/Winget/index.html | 2 +- .../Legacy-Windows-Panels/control/index.html | 2 +- .../Legacy-Windows-Panels/network/index.html | 2 +- .../Legacy-Windows-Panels/power/index.html | 2 +- .../Legacy-Windows-Panels/region/index.html | 2 +- .../Legacy-Windows-Panels/sound/index.html | 2 +- .../Legacy-Windows-Panels/system/index.html | 2 +- .../Legacy-Windows-Panels/user/index.html | 2 +- .../Customize-Preferences/BingSearch/index.html | 2 +- .../Customize-Preferences/DarkMode/index.html | 2 +- .../DetailedBSoD/index.html | 2 +- .../HiddenFiles/index.html | 2 +- .../MouseAcceleration/index.html | 2 +- .../Customize-Preferences/NumLock/index.html | 2 +- .../Customize-Preferences/ShowExt/index.html | 2 +- .../Customize-Preferences/SnapFlyout/index.html | 2 +- .../SnapSuggestion/index.html | 2 +- .../Customize-Preferences/SnapWindow/index.html | 2 +- .../Customize-Preferences/StickyKeys/index.html | 2 +- .../Customize-Preferences/TaskView/index.html | 2 +- .../TaskbarAlignment/index.html | 2 +- .../TaskbarSearch/index.html | 2 +- .../TaskbarWidgets/index.html | 2 +- .../VerboseLogon/index.html | 2 +- dev/tweaks/Essential-Tweaks/AH/index.html | 2 +- .../ConsumerFeatures/index.html | 2 +- dev/tweaks/Essential-Tweaks/DVR/index.html | 2 +- .../Essential-Tweaks/DeleteTempFiles/index.html | 2 +- .../Essential-Tweaks/DiskCleanup/index.html | 2 +- .../Essential-Tweaks/EdgeDebloat/index.html | 2 +- .../EndTaskOnTaskbar/index.html | 2 +- dev/tweaks/Essential-Tweaks/Hiber/index.html | 2 +- dev/tweaks/Essential-Tweaks/Home/index.html | 2 +- dev/tweaks/Essential-Tweaks/IPv46/index.html | 2 +- .../LaptopHibernation/index.html | 2 +- dev/tweaks/Essential-Tweaks/Loc/index.html | 2 +- .../Essential-Tweaks/Powershell7/index.html | 2 +- .../Essential-Tweaks/Powershell7Tele/index.html | 2 +- .../Essential-Tweaks/RestorePoint/index.html | 2 +- dev/tweaks/Essential-Tweaks/Services/index.html | 2 +- dev/tweaks/Essential-Tweaks/Storage/index.html | 2 +- dev/tweaks/Essential-Tweaks/Tele/index.html | 2 +- dev/tweaks/Essential-Tweaks/Wifi/index.html | 2 +- .../Performance-Plans/AddUltPerf/index.html | 2 +- .../Performance-Plans/RemoveUltPerf/index.html | 2 +- dev/tweaks/Shortcuts/Shortcut/index.html | 2 +- .../BlockAdobeNet/index.html | 2 +- .../DeBloat/index.html | 2 +- .../DebloatAdobe/index.html | 2 +- .../DisableBGapps/index.html | 2 +- .../DisableFSO/index.html | 2 +- .../DisableLMS1/index.html | 2 +- .../DisableNotifications/index.html | 2 +- .../Disableipsix/index.html | 2 +- .../Display/index.html | 2 +- .../OOSUbutton/index.html | 2 +- .../RemoveCopilot/index.html | 2 +- .../RemoveEdge/index.html | 2 +- .../RemoveHomeGallery/index.html | 2 +- .../RemoveOnedrive/index.html | 2 +- .../RightClickMenu/index.html | 2 +- .../Teredo/index.html | 2 +- .../z--Advanced-Tweaks---CAUTION/UTC/index.html | 2 +- .../Undoall/index.html | 2 +- .../button/index.html | 2 +- .../changedns/index.html | 2 +- devdocs/index.html | 2 +- faq/index.html | 2 +- index.html | 2 +- sitemap.xml.gz | Bin 127 -> 127 bytes userguide/index.html | 2 +- 91 files changed, 90 insertions(+), 90 deletions(-) diff --git a/404.html b/404.html index 1ccd3c7de..e5e067c7d 100644 --- a/404.html +++ b/404.html @@ -1 +1 @@ - WinUtil Documentation

    404 - Not found

    \ No newline at end of file + WinUtil Documentation
    Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

    404 - Not found

    \ No newline at end of file diff --git a/KnownIssues/index.html b/KnownIssues/index.html index fa88db852..6bd50eed4 100644 --- a/KnownIssues/index.html +++ b/KnownIssues/index.html @@ -1,4 +1,4 @@ - Known Issues - WinUtil Documentation

    Known Issues

    Launch Issues:

    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')
    + Known Issues - WinUtil Documentation      
    Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

    Known Issues

    Launch Issues:

    • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
    • If possible: Allow script in Anti-Virus software settings.

    • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

    [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')
     

    If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

    Provider Primary DNS Secondary DNS
    Cloudflare 1.1.1.1 1.0.0.1
    Google 8.8.8.8 8.8.4.4
    • Script doesn't run/PowerShell crashes:
    • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
    • Run:
      Set-ExecutionPolicy Unrestricted -Scope Process -Force
       
    • Run:
      irm christitus.com/win | iex
       

    Other Issues:

    • Windows taking longer to shut down:
    • #69 Turn on fast startup: Press Windows key + R, then type:
      control /name Microsoft.PowerOptions /page pageGlobalSettings
      diff --git a/contribute/index.html b/contribute/index.html
      index ff5908303..7a0b2f8ba 100644
      --- a/contribute/index.html
      +++ b/contribute/index.html
      @@ -1,4 +1,4 @@
      - Contributing Guide - WinUtil Documentation      

      How to Contribute?

      Testing

      • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!

      Run the latest pre-release

      irm christitus.com/windev | iex
      + Contributing Guide - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      How to Contribute?

      Testing

      • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!

      Run the latest pre-release

      irm christitus.com/windev | iex
       

      Keep in mind

      This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

      Issues

      • If you encounter any challenges or problems with the script, I kindly request that you submit them via the "Issues" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.

      Contribute Code

      • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

      • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

      Important

      Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

      • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

      • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

      Note

      When creating a function, please include "WPF" or "WinUtil" in the file name so it can be loaded into the runspace.

      Walk through

      Overview

      %%{init: {"flowchart": {"curve": "cardinal"}} }%%
       graph TD
         A[Fork Project] --> B[Clone Repository];
      diff --git a/dev/features/Features/DisableLegacyRecovery/index.html b/dev/features/Features/DisableLegacyRecovery/index.html
      index d98fcf10f..2f6567dae 100644
      --- a/dev/features/Features/DisableLegacyRecovery/index.html
      +++ b/dev/features/Features/DisableLegacyRecovery/index.html
      @@ -1,4 +1,4 @@
      - Disable Legacy F8 Boot Recovery - WinUtil Documentation      

      Disable Legacy F8 Boot Recovery

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

      Preview Code
      {
      + Disable Legacy F8 Boot Recovery - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Legacy F8 Boot Recovery

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

      Preview Code
      {
         "Content": "Disable Legacy F8 Boot Recovery",
         "Description": "Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.",
         "category": "Features",
      diff --git a/dev/features/Features/DisableSearchSuggestions/index.html b/dev/features/Features/DisableSearchSuggestions/index.html
      index 2a2611ed9..909afaedc 100644
      --- a/dev/features/Features/DisableSearchSuggestions/index.html
      +++ b/dev/features/Features/DisableSearchSuggestions/index.html
      @@ -1,4 +1,4 @@
      - Disable Search Box Web Suggestions in Registry(explorer restart) - WinUtil Documentation      

      Disable Search Box Web Suggestions in Registry(explorer restart)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables web suggestions when searching using Windows Search.

      Preview Code
      {
      + Disable Search Box Web Suggestions in Registry(explorer restart) - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Search Box Web Suggestions in Registry(explorer restart)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables web suggestions when searching using Windows Search.

      Preview Code
      {
         "Content": "Disable Search Box Web Suggestions in Registry(explorer restart)",
         "Description": "Disables web suggestions when searching using Windows Search.",
         "category": "Features",
      diff --git a/dev/features/Features/EnableLegacyRecovery/index.html b/dev/features/Features/EnableLegacyRecovery/index.html
      index c1398c0a9..1e7caba99 100644
      --- a/dev/features/Features/EnableLegacyRecovery/index.html
      +++ b/dev/features/Features/EnableLegacyRecovery/index.html
      @@ -1,4 +1,4 @@
      - Enable Legacy F8 Boot Recovery - WinUtil Documentation      

      Enable Legacy F8 Boot Recovery

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

      Preview Code
      {
      + Enable Legacy F8 Boot Recovery - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Enable Legacy F8 Boot Recovery

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

      Preview Code
      {
         "Content": "Enable Legacy F8 Boot Recovery",
         "Description": "Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.",
         "category": "Features",
      diff --git a/dev/features/Features/EnableSearchSuggestions/index.html b/dev/features/Features/EnableSearchSuggestions/index.html
      index a308cb972..14fb9b43d 100644
      --- a/dev/features/Features/EnableSearchSuggestions/index.html
      +++ b/dev/features/Features/EnableSearchSuggestions/index.html
      @@ -1,4 +1,4 @@
      - Enable Search Box Web Suggestions in Registry(explorer restart) - WinUtil Documentation      

      Enable Search Box Web Suggestions in Registry(explorer restart)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enables web suggestions when searching using Windows Search.

      Preview Code
      {
      + Enable Search Box Web Suggestions in Registry(explorer restart) - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Enable Search Box Web Suggestions in Registry(explorer restart)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enables web suggestions when searching using Windows Search.

      Preview Code
      {
         "Content": "Enable Search Box Web Suggestions in Registry(explorer restart)",
         "Description": "Enables web suggestions when searching using Windows Search.",
         "category": "Features",
      diff --git a/dev/features/Features/Install/index.html b/dev/features/Features/Install/index.html
      index 29c1f75ae..15895b4ec 100644
      --- a/dev/features/Features/Install/index.html
      +++ b/dev/features/Features/Install/index.html
      @@ -1,4 +1,4 @@
      - Install Features - WinUtil Documentation      

      Install Features

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Install Features - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Install Features

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Install Features",
         "category": "Features",
         "panel": "1",
      diff --git a/dev/features/Features/RegBackup/index.html b/dev/features/Features/RegBackup/index.html
      index 8e54a2cb3..98c6c4c40 100644
      --- a/dev/features/Features/RegBackup/index.html
      +++ b/dev/features/Features/RegBackup/index.html
      @@ -1,4 +1,4 @@
      - Enable Daily Registry Backup Task 12.30am - WinUtil Documentation      

      Enable Daily Registry Backup Task 12.30am

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

      Preview Code
      {
      + Enable Daily Registry Backup Task 12.30am - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Enable Daily Registry Backup Task 12.30am

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

      Preview Code
      {
         "Content": "Enable Daily Registry Backup Task 12.30am",
         "Description": "Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.",
         "category": "Features",
      diff --git a/dev/features/Features/Sandbox/index.html b/dev/features/Features/Sandbox/index.html
      index cb88fa6e5..50b9daf7e 100644
      --- a/dev/features/Features/Sandbox/index.html
      +++ b/dev/features/Features/Sandbox/index.html
      @@ -1,4 +1,4 @@
      - Windows Sandbox - WinUtil Documentation      

      Windows Sandbox

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

      Preview Code
      {
      + Windows Sandbox - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Windows Sandbox

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

      Preview Code
      {
         "Content": "Windows Sandbox",
         "category": "Features",
         "panel": "1",
      diff --git a/dev/features/Features/dotnet/index.html b/dev/features/Features/dotnet/index.html
      index 3aca0897e..791fb93e8 100644
      --- a/dev/features/Features/dotnet/index.html
      +++ b/dev/features/Features/dotnet/index.html
      @@ -1,4 +1,4 @@
      - All .Net Framework (2,3,4) - WinUtil Documentation      

      All .Net Framework (2,3,4)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

      Preview Code
      {
      + All .Net Framework (2,3,4) - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      All .Net Framework (2,3,4)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

      Preview Code
      {
         "Content": "All .Net Framework (2,3,4)",
         "Description": ".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.",
         "category": "Features",
      diff --git a/dev/features/Features/hyperv/index.html b/dev/features/Features/hyperv/index.html
      index ec9298e99..0452e28b0 100644
      --- a/dev/features/Features/hyperv/index.html
      +++ b/dev/features/Features/hyperv/index.html
      @@ -1,4 +1,4 @@
      - HyperV Virtualization - WinUtil Documentation      

      HyperV Virtualization

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

      Preview Code
      {
      + HyperV Virtualization - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      HyperV Virtualization

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

      Preview Code
      {
         "Content": "HyperV Virtualization",
         "Description": "Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.",
         "category": "Features",
      diff --git a/dev/features/Features/legacymedia/index.html b/dev/features/Features/legacymedia/index.html
      index 4f3cd56e6..ee0dec551 100644
      --- a/dev/features/Features/legacymedia/index.html
      +++ b/dev/features/Features/legacymedia/index.html
      @@ -1,4 +1,4 @@
      - Legacy Media (WMP, DirectPlay) - WinUtil Documentation      

      Legacy Media (WMP, DirectPlay)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enables legacy programs from previous versions of windows

      Preview Code
      {
      + Legacy Media (WMP, DirectPlay) - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Legacy Media (WMP, DirectPlay)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enables legacy programs from previous versions of windows

      Preview Code
      {
         "Content": "Legacy Media (WMP, DirectPlay)",
         "Description": "Enables legacy programs from previous versions of windows",
         "category": "Features",
      diff --git a/dev/features/Features/nfs/index.html b/dev/features/Features/nfs/index.html
      index 69b84e114..35b03eb5a 100644
      --- a/dev/features/Features/nfs/index.html
      +++ b/dev/features/Features/nfs/index.html
      @@ -1,4 +1,4 @@
      - NFS - Network File System - WinUtil Documentation      

      NFS - Network File System

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Network File System (NFS) is a mechanism for storing files on a network.

      Preview Code
      {
      + NFS - Network File System - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      NFS - Network File System

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Network File System (NFS) is a mechanism for storing files on a network.

      Preview Code
      {
         "Content": "NFS - Network File System",
         "Description": "Network File System (NFS) is a mechanism for storing files on a network.",
         "category": "Features",
      diff --git a/dev/features/Features/wsl/index.html b/dev/features/Features/wsl/index.html
      index b01499717..163b7c3ef 100644
      --- a/dev/features/Features/wsl/index.html
      +++ b/dev/features/Features/wsl/index.html
      @@ -1,4 +1,4 @@
      - Windows Subsystem for Linux - WinUtil Documentation      

      Windows Subsystem for Linux

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

      Preview Code
      {
      + Windows Subsystem for Linux - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Windows Subsystem for Linux

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

      Preview Code
      {
         "Content": "Windows Subsystem for Linux",
         "Description": "Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.",
         "category": "Features",
      diff --git a/dev/features/Fixes/Autologin/index.html b/dev/features/Fixes/Autologin/index.html
      index 5869bcbf4..6df84f8f9 100644
      --- a/dev/features/Fixes/Autologin/index.html
      +++ b/dev/features/Fixes/Autologin/index.html
      @@ -1,4 +1,4 @@
      - Set Up Autologin - WinUtil Documentation      

      Set Up Autologin

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Set Up Autologin - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Set Up Autologin

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Set Up Autologin",
         "category": "Fixes",
         "Order": "a040_",
      diff --git a/dev/features/Fixes/DISM/index.html b/dev/features/Fixes/DISM/index.html
      index f5826f757..d4889e38a 100644
      --- a/dev/features/Fixes/DISM/index.html
      +++ b/dev/features/Fixes/DISM/index.html
      @@ -1,4 +1,4 @@
      - System Corruption Scan - WinUtil Documentation      

      System Corruption Scan

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + System Corruption Scan - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      System Corruption Scan

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "System Corruption Scan",
         "category": "Fixes",
         "panel": "1",
      diff --git a/dev/features/Fixes/Network/index.html b/dev/features/Fixes/Network/index.html
      index 6344f460c..49a27e2c1 100644
      --- a/dev/features/Fixes/Network/index.html
      +++ b/dev/features/Fixes/Network/index.html
      @@ -1,4 +1,4 @@
      - Reset Network - WinUtil Documentation      

      Reset Network

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Reset Network - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Reset Network

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Reset Network",
         "category": "Fixes",
         "Order": "a042_",
      diff --git a/dev/features/Fixes/RunAdobeCCCleanerTool/index.html b/dev/features/Fixes/RunAdobeCCCleanerTool/index.html
      index ad4932cac..580771af5 100644
      --- a/dev/features/Fixes/RunAdobeCCCleanerTool/index.html
      +++ b/dev/features/Fixes/RunAdobeCCCleanerTool/index.html
      @@ -1,4 +1,4 @@
      - Remove Adobe Creative Cloud - WinUtil Documentation      

      Remove Adobe Creative Cloud

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Remove Adobe Creative Cloud - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Remove Adobe Creative Cloud

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Remove Adobe Creative Cloud",
         "category": "Fixes",
         "panel": "1",
      diff --git a/dev/features/Fixes/Update/index.html b/dev/features/Fixes/Update/index.html
      index 45ddd54ed..385ac79a1 100644
      --- a/dev/features/Fixes/Update/index.html
      +++ b/dev/features/Fixes/Update/index.html
      @@ -1,4 +1,4 @@
      - Reset Windows Update - WinUtil Documentation      

      Reset Windows Update

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Reset Windows Update - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Reset Windows Update

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Reset Windows Update",
         "category": "Fixes",
         "panel": "1",
      diff --git a/dev/features/Fixes/Winget/index.html b/dev/features/Fixes/Winget/index.html
      index 7b0bbe80e..2a4005c04 100644
      --- a/dev/features/Fixes/Winget/index.html
      +++ b/dev/features/Fixes/Winget/index.html
      @@ -1,4 +1,4 @@
      - WinGet Reinstall - WinUtil Documentation      

      WinGet Reinstall

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + WinGet Reinstall - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      WinGet Reinstall

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "WinGet Reinstall",
         "category": "Fixes",
         "panel": "1",
      diff --git a/dev/features/Legacy-Windows-Panels/control/index.html b/dev/features/Legacy-Windows-Panels/control/index.html
      index 1ff2800b9..38c4a5f92 100644
      --- a/dev/features/Legacy-Windows-Panels/control/index.html
      +++ b/dev/features/Legacy-Windows-Panels/control/index.html
      @@ -1,4 +1,4 @@
      - Control Panel - WinUtil Documentation      

      Control Panel

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Control Panel - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Control Panel

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Control Panel",
         "category": "Legacy Windows Panels",
         "panel": "2",
      diff --git a/dev/features/Legacy-Windows-Panels/network/index.html b/dev/features/Legacy-Windows-Panels/network/index.html
      index 84750d3b1..3b11268f8 100644
      --- a/dev/features/Legacy-Windows-Panels/network/index.html
      +++ b/dev/features/Legacy-Windows-Panels/network/index.html
      @@ -1,4 +1,4 @@
      - Network Connections - WinUtil Documentation      

      Network Connections

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Network Connections - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Network Connections

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Network Connections",
         "category": "Legacy Windows Panels",
         "panel": "2",
      diff --git a/dev/features/Legacy-Windows-Panels/power/index.html b/dev/features/Legacy-Windows-Panels/power/index.html
      index a8588113c..621238855 100644
      --- a/dev/features/Legacy-Windows-Panels/power/index.html
      +++ b/dev/features/Legacy-Windows-Panels/power/index.html
      @@ -1,4 +1,4 @@
      - Power Panel - WinUtil Documentation      

      Power Panel

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Power Panel - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Power Panel

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Power Panel",
         "category": "Legacy Windows Panels",
         "panel": "2",
      diff --git a/dev/features/Legacy-Windows-Panels/region/index.html b/dev/features/Legacy-Windows-Panels/region/index.html
      index caf899542..b0ca11df0 100644
      --- a/dev/features/Legacy-Windows-Panels/region/index.html
      +++ b/dev/features/Legacy-Windows-Panels/region/index.html
      @@ -1,4 +1,4 @@
      - Region - WinUtil Documentation      

      Region

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Region - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Region

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Region",
         "category": "Legacy Windows Panels",
         "panel": "2",
      diff --git a/dev/features/Legacy-Windows-Panels/sound/index.html b/dev/features/Legacy-Windows-Panels/sound/index.html
      index 75dbff8ce..0b767c402 100644
      --- a/dev/features/Legacy-Windows-Panels/sound/index.html
      +++ b/dev/features/Legacy-Windows-Panels/sound/index.html
      @@ -1,4 +1,4 @@
      - Sound Settings - WinUtil Documentation      

      Sound Settings

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Sound Settings - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Sound Settings

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Sound Settings",
         "category": "Legacy Windows Panels",
         "panel": "2",
      diff --git a/dev/features/Legacy-Windows-Panels/system/index.html b/dev/features/Legacy-Windows-Panels/system/index.html
      index 45aa31ed9..bb4313a70 100644
      --- a/dev/features/Legacy-Windows-Panels/system/index.html
      +++ b/dev/features/Legacy-Windows-Panels/system/index.html
      @@ -1,4 +1,4 @@
      - System Properties - WinUtil Documentation      

      System Properties

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + System Properties - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      System Properties

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "System Properties",
         "category": "Legacy Windows Panels",
         "panel": "2",
      diff --git a/dev/features/Legacy-Windows-Panels/user/index.html b/dev/features/Legacy-Windows-Panels/user/index.html
      index 759bc1d2b..a225e2e10 100644
      --- a/dev/features/Legacy-Windows-Panels/user/index.html
      +++ b/dev/features/Legacy-Windows-Panels/user/index.html
      @@ -1,4 +1,4 @@
      - User Accounts - WinUtil Documentation      

      User Accounts

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + User Accounts - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      User Accounts

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "User Accounts",
         "category": "Legacy Windows Panels",
         "panel": "2",
      diff --git a/dev/tweaks/Customize-Preferences/BingSearch/index.html b/dev/tweaks/Customize-Preferences/BingSearch/index.html
      index da9d03056..f41779309 100644
      --- a/dev/tweaks/Customize-Preferences/BingSearch/index.html
      +++ b/dev/tweaks/Customize-Preferences/BingSearch/index.html
      @@ -1,4 +1,4 @@
      - Bing Search in Start Menu - WinUtil Documentation      

      Bing Search in Start Menu

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If enable then includes web search results from Bing in your Start Menu search.

      Preview Code
      {
      + Bing Search in Start Menu - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Bing Search in Start Menu

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If enable then includes web search results from Bing in your Start Menu search.

      Preview Code
      {
         "Content": "Bing Search in Start Menu",
         "Description": "If enable then includes web search results from Bing in your Start Menu search.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/DarkMode/index.html b/dev/tweaks/Customize-Preferences/DarkMode/index.html
      index 9a4df49eb..6ae4379e5 100644
      --- a/dev/tweaks/Customize-Preferences/DarkMode/index.html
      +++ b/dev/tweaks/Customize-Preferences/DarkMode/index.html
      @@ -1,4 +1,4 @@
      - Dark Theme for Windows - WinUtil Documentation      

      Dark Theme for Windows

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enable/Disable Dark Mode.

      Preview Code
      {
      + Dark Theme for Windows - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Dark Theme for Windows

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enable/Disable Dark Mode.

      Preview Code
      {
         "Content": "Dark Theme for Windows",
         "Description": "Enable/Disable Dark Mode.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html b/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html
      index 7fdefb90a..330cb8318 100644
      --- a/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html
      +++ b/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html
      @@ -1,4 +1,4 @@
      - Detailed BSoD - WinUtil Documentation      

      Detailed BSoD

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

      Preview Code
      {
      + Detailed BSoD - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Detailed BSoD

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

      Preview Code
      {
         "Content": "Detailed BSoD",
         "Description": "If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/HiddenFiles/index.html b/dev/tweaks/Customize-Preferences/HiddenFiles/index.html
      index d6c938324..bbb048649 100644
      --- a/dev/tweaks/Customize-Preferences/HiddenFiles/index.html
      +++ b/dev/tweaks/Customize-Preferences/HiddenFiles/index.html
      @@ -1,4 +1,4 @@
      - Show Hidden Files - WinUtil Documentation      

      Show Hidden Files

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then Hidden Files will be shown.

      Preview Code
      {
      + Show Hidden Files - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Show Hidden Files

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then Hidden Files will be shown.

      Preview Code
      {
         "Content": "Show Hidden Files",
         "Description": "If Enabled then Hidden Files will be shown.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html b/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html
      index d62d6da53..ceb14cf3c 100644
      --- a/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html
      +++ b/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html
      @@ -1,4 +1,4 @@
      - Mouse Acceleration - WinUtil Documentation      

      Mouse Acceleration

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

      Preview Code
      {
      + Mouse Acceleration - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Mouse Acceleration

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

      Preview Code
      {
         "Content": "Mouse Acceleration",
         "Description": "If Enabled then Cursor movement is affected by the speed of your physical mouse movements.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/NumLock/index.html b/dev/tweaks/Customize-Preferences/NumLock/index.html
      index 8e8ad8017..c2cd4a5e2 100644
      --- a/dev/tweaks/Customize-Preferences/NumLock/index.html
      +++ b/dev/tweaks/Customize-Preferences/NumLock/index.html
      @@ -1,4 +1,4 @@
      - NumLock on Startup - WinUtil Documentation      

      NumLock on Startup

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Toggle the Num Lock key state when your computer starts.

      Preview Code
      {
      + NumLock on Startup - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      NumLock on Startup

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Toggle the Num Lock key state when your computer starts.

      Preview Code
      {
         "Content": "NumLock on Startup",
         "Description": "Toggle the Num Lock key state when your computer starts.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/ShowExt/index.html b/dev/tweaks/Customize-Preferences/ShowExt/index.html
      index d515ccaf0..6792397ed 100644
      --- a/dev/tweaks/Customize-Preferences/ShowExt/index.html
      +++ b/dev/tweaks/Customize-Preferences/ShowExt/index.html
      @@ -1,4 +1,4 @@
      - Show File Extensions - WinUtil Documentation      

      Show File Extensions

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If enabled then File extensions (e.g., .txt, .jpg) are visible.

      Preview Code
      {
      + Show File Extensions - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Show File Extensions

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If enabled then File extensions (e.g., .txt, .jpg) are visible.

      Preview Code
      {
         "Content": "Show File Extensions",
         "Description": "If enabled then File extensions (e.g., .txt, .jpg) are visible.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/SnapFlyout/index.html b/dev/tweaks/Customize-Preferences/SnapFlyout/index.html
      index 995db488b..d40fc6b52 100644
      --- a/dev/tweaks/Customize-Preferences/SnapFlyout/index.html
      +++ b/dev/tweaks/Customize-Preferences/SnapFlyout/index.html
      @@ -1,4 +1,4 @@
      - Snap Assist Flyout - WinUtil Documentation      

      Snap Assist Flyout

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If enabled then Snap preview is disabled when maximize button is hovered.

      Preview Code
      {
      + Snap Assist Flyout - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Snap Assist Flyout

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If enabled then Snap preview is disabled when maximize button is hovered.

      Preview Code
      {
         "Content": "Snap Assist Flyout",
         "Description": "If enabled then Snap preview is disabled when maximize button is hovered.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html b/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html
      index 1039eeb74..a6f8e2238 100644
      --- a/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html
      +++ b/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html
      @@ -1,4 +1,4 @@
      - Snap Assist Suggestion - WinUtil Documentation      

      Snap Assist Suggestion

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If enabled then you will get suggestions to snap other applications in the left over spaces.

      Preview Code
      {
      + Snap Assist Suggestion - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Snap Assist Suggestion

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If enabled then you will get suggestions to snap other applications in the left over spaces.

      Preview Code
      {
         "Content": "Snap Assist Suggestion",
         "Description": "If enabled then you will get suggestions to snap other applications in the left over spaces.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/SnapWindow/index.html b/dev/tweaks/Customize-Preferences/SnapWindow/index.html
      index 4d44f5f1e..2ba28898c 100644
      --- a/dev/tweaks/Customize-Preferences/SnapWindow/index.html
      +++ b/dev/tweaks/Customize-Preferences/SnapWindow/index.html
      @@ -1,4 +1,4 @@
      - Snap Window - WinUtil Documentation      

      Snap Window

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If enabled you can align windows by dragging them. | Relogin Required

      Preview Code
      {
      + Snap Window - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Snap Window

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If enabled you can align windows by dragging them. | Relogin Required

      Preview Code
      {
         "Content": "Snap Window",
         "Description": "If enabled you can align windows by dragging them. | Relogin Required",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/StickyKeys/index.html b/dev/tweaks/Customize-Preferences/StickyKeys/index.html
      index 316cd045a..8e934a205 100644
      --- a/dev/tweaks/Customize-Preferences/StickyKeys/index.html
      +++ b/dev/tweaks/Customize-Preferences/StickyKeys/index.html
      @@ -1,4 +1,4 @@
      - Sticky Keys - WinUtil Documentation      

      Sticky Keys

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

      Preview Code
      {
      + Sticky Keys - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Sticky Keys

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

      Preview Code
      {
         "Content": "Sticky Keys",
         "Description": "If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/TaskView/index.html b/dev/tweaks/Customize-Preferences/TaskView/index.html
      index 68060d5d7..1f3059c47 100644
      --- a/dev/tweaks/Customize-Preferences/TaskView/index.html
      +++ b/dev/tweaks/Customize-Preferences/TaskView/index.html
      @@ -1,4 +1,4 @@
      - Task View Button in Taskbar - WinUtil Documentation      

      Task View Button in Taskbar

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then Task View Button in Taskbar will be shown.

      Preview Code
      {
      + Task View Button in Taskbar - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Task View Button in Taskbar

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then Task View Button in Taskbar will be shown.

      Preview Code
      {
         "Content": "Task View Button in Taskbar",
         "Description": "If Enabled then Task View Button in Taskbar will be shown.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html b/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html
      index c4058339f..8d8704a3c 100644
      --- a/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html
      +++ b/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html
      @@ -1,4 +1,4 @@
      - Center Taskbar Items - WinUtil Documentation      

      Center Taskbar Items

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

      Preview Code
      {
      + Center Taskbar Items - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Center Taskbar Items

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

      Preview Code
      {
         "Content": "Center Taskbar Items",
         "Description": "[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html b/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html
      index ef0dd25f3..d92a5fe40 100644
      --- a/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html
      +++ b/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html
      @@ -1,4 +1,4 @@
      - Search Button in Taskbar - WinUtil Documentation      

      Search Button in Taskbar

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled Search Button will be on the taskbar.

      Preview Code
      {
      + Search Button in Taskbar - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Search Button in Taskbar

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled Search Button will be on the taskbar.

      Preview Code
      {
         "Content": "Search Button in Taskbar",
         "Description": "If Enabled Search Button will be on the taskbar.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html b/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html
      index 4d9c48494..8de78f9a8 100644
      --- a/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html
      +++ b/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html
      @@ -1,4 +1,4 @@
      - Widgets Button in Taskbar - WinUtil Documentation      

      Widgets Button in Taskbar

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then Widgets Button in Taskbar will be shown.

      Preview Code
      {
      + Widgets Button in Taskbar - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Widgets Button in Taskbar

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      If Enabled then Widgets Button in Taskbar will be shown.

      Preview Code
      {
         "Content": "Widgets Button in Taskbar",
         "Description": "If Enabled then Widgets Button in Taskbar will be shown.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Customize-Preferences/VerboseLogon/index.html b/dev/tweaks/Customize-Preferences/VerboseLogon/index.html
      index a2faaefb2..061a4478e 100644
      --- a/dev/tweaks/Customize-Preferences/VerboseLogon/index.html
      +++ b/dev/tweaks/Customize-Preferences/VerboseLogon/index.html
      @@ -1,4 +1,4 @@
      - Verbose Messages During Logon - WinUtil Documentation      

      Verbose Messages During Logon

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Show detailed messages during the login process for troubleshooting and diagnostics.

      Preview Code
      {
      + Verbose Messages During Logon - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Verbose Messages During Logon

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Show detailed messages during the login process for troubleshooting and diagnostics.

      Preview Code
      {
         "Content": "Verbose Messages During Logon",
         "Description": "Show detailed messages during the login process for troubleshooting and diagnostics.",
         "category": "Customize Preferences",
      diff --git a/dev/tweaks/Essential-Tweaks/AH/index.html b/dev/tweaks/Essential-Tweaks/AH/index.html
      index 8a500cf2f..e58f5201b 100644
      --- a/dev/tweaks/Essential-Tweaks/AH/index.html
      +++ b/dev/tweaks/Essential-Tweaks/AH/index.html
      @@ -1,4 +1,4 @@
      - Disable Activity History - WinUtil Documentation      

      Disable Activity History

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      This erases recent docs, clipboard, and run history.

      Preview Code
      {
      + Disable Activity History - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Activity History

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      This erases recent docs, clipboard, and run history.

      Preview Code
      {
         "Content": "Disable Activity History",
         "Description": "This erases recent docs, clipboard, and run history.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html b/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html
      index 488c071e3..a8a2efaa8 100644
      --- a/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html
      +++ b/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html
      @@ -1,4 +1,4 @@
      - Disable ConsumerFeatures - WinUtil Documentation      

      Disable ConsumerFeatures

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

      Preview Code
      {
      + Disable ConsumerFeatures - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable ConsumerFeatures

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

      Preview Code
      {
         "Content": "Disable ConsumerFeatures",
         "Description": "Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/DVR/index.html b/dev/tweaks/Essential-Tweaks/DVR/index.html
      index 5164b102c..c503a0f09 100644
      --- a/dev/tweaks/Essential-Tweaks/DVR/index.html
      +++ b/dev/tweaks/Essential-Tweaks/DVR/index.html
      @@ -1,4 +1,4 @@
      - Disable GameDVR - WinUtil Documentation      

      Disable GameDVR

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

      Preview Code
      {
      + Disable GameDVR - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable GameDVR

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

      Preview Code
      {
         "Content": "Disable GameDVR",
         "Description": "GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html b/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html
      index 7018f1f04..b88ab0cb8 100644
      --- a/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html
      +++ b/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html
      @@ -1,4 +1,4 @@
      - Delete Temporary Files - WinUtil Documentation      

      Delete Temporary Files

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Erases TEMP Folders

      Preview Code
      {
      + Delete Temporary Files - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Delete Temporary Files

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Erases TEMP Folders

      Preview Code
      {
         "Content": "Delete Temporary Files",
         "Description": "Erases TEMP Folders",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html b/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html
      index f6674dddf..9ff38ce74 100644
      --- a/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html
      +++ b/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html
      @@ -1,4 +1,4 @@
      - Run Disk Cleanup - WinUtil Documentation      

      Run Disk Cleanup

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Runs Disk Cleanup on Drive C: and removes old Windows Updates.

      Preview Code
      {
      + Run Disk Cleanup - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Run Disk Cleanup

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Runs Disk Cleanup on Drive C: and removes old Windows Updates.

      Preview Code
      {
         "Content": "Run Disk Cleanup",
         "Description": "Runs Disk Cleanup on Drive C: and removes old Windows Updates.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html b/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html
      index 6cbc3fe25..e815fcc5b 100644
      --- a/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html
      +++ b/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html
      @@ -1,4 +1,4 @@
      - Debloat Edge - WinUtil Documentation      

      Debloat Edge

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables various telemetry options, popups, and other annoyances in Edge.

      Preview Code
      {
      + Debloat Edge - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Debloat Edge

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables various telemetry options, popups, and other annoyances in Edge.

      Preview Code
      {
         "Content": "Debloat Edge",
         "Description": "Disables various telemetry options, popups, and other annoyances in Edge.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html b/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html
      index d651c2ef3..bf9cb271b 100644
      --- a/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html
      +++ b/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html
      @@ -1,4 +1,4 @@
      - Enable End Task With Right Click - WinUtil Documentation      

      Enable End Task With Right Click

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enables option to end task when right clicking a program in the taskbar

      Preview Code
      {
      + Enable End Task With Right Click - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Enable End Task With Right Click

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Enables option to end task when right clicking a program in the taskbar

      Preview Code
      {
         "Content": "Enable End Task With Right Click",
         "Description": "Enables option to end task when right clicking a program in the taskbar",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/Hiber/index.html b/dev/tweaks/Essential-Tweaks/Hiber/index.html
      index cf5115656..a963696e0 100644
      --- a/dev/tweaks/Essential-Tweaks/Hiber/index.html
      +++ b/dev/tweaks/Essential-Tweaks/Hiber/index.html
      @@ -1,4 +1,4 @@
      - Disable Hibernation - WinUtil Documentation      

      Disable Hibernation

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

      Preview Code
      {
      + Disable Hibernation - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Hibernation

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

      Preview Code
      {
         "Content": "Disable Hibernation",
         "Description": "Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/Home/index.html b/dev/tweaks/Essential-Tweaks/Home/index.html
      index bd71270ed..ef78a2408 100644
      --- a/dev/tweaks/Essential-Tweaks/Home/index.html
      +++ b/dev/tweaks/Essential-Tweaks/Home/index.html
      @@ -1,4 +1,4 @@
      - Disable Homegroup - WinUtil Documentation      

      Disable Homegroup

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

      Preview Code
      {
      + Disable Homegroup - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Homegroup

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

      Preview Code
      {
         "Content": "Disable Homegroup",
         "Description": "Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/IPv46/index.html b/dev/tweaks/Essential-Tweaks/IPv46/index.html
      index fbe30c478..718209464 100644
      --- a/dev/tweaks/Essential-Tweaks/IPv46/index.html
      +++ b/dev/tweaks/Essential-Tweaks/IPv46/index.html
      @@ -1,4 +1,4 @@
      - Prefer IPv4 over IPv6 - WinUtil Documentation      

      Prefer IPv4 over IPv6

      Last Updated: 2024-08-27

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.

      Preview Code
      {
      + Prefer IPv4 over IPv6 - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Prefer IPv4 over IPv6

      Last Updated: 2024-08-27

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.

      Preview Code
      {
         "Content": "Prefer IPv4 over IPv6",
         "Description": "To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html b/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html
      index c38c1e9c2..ab50426f7 100644
      --- a/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html
      +++ b/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html
      @@ -1,4 +1,4 @@
      - Set Hibernation as default (good for laptops) - WinUtil Documentation      

      Set Hibernation as default (good for laptops)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

      Preview Code
      {
      + Set Hibernation as default (good for laptops) - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Set Hibernation as default (good for laptops)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

      Preview Code
      {
         "Content": "Set Hibernation as default (good for laptops)",
         "Description": "Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/Loc/index.html b/dev/tweaks/Essential-Tweaks/Loc/index.html
      index 05178e579..604f4008c 100644
      --- a/dev/tweaks/Essential-Tweaks/Loc/index.html
      +++ b/dev/tweaks/Essential-Tweaks/Loc/index.html
      @@ -1,4 +1,4 @@
      - Disable Location Tracking - WinUtil Documentation      

      Disable Location Tracking

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables Location Tracking...DUH!

      Preview Code
      {
      + Disable Location Tracking - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Location Tracking

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables Location Tracking...DUH!

      Preview Code
      {
         "Content": "Disable Location Tracking",
         "Description": "Disables Location Tracking...DUH!",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/Powershell7/index.html b/dev/tweaks/Essential-Tweaks/Powershell7/index.html
      index 177c8e8eb..1ffd8f685 100644
      --- a/dev/tweaks/Essential-Tweaks/Powershell7/index.html
      +++ b/dev/tweaks/Essential-Tweaks/Powershell7/index.html
      @@ -1,4 +1,4 @@
      - Change Windows Terminal default: PowerShell 5 -> PowerShell 7 - WinUtil Documentation      

      Change Windows Terminal default: PowerShell 5 -> PowerShell 7

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

      Preview Code
      {
      + Change Windows Terminal default: PowerShell 5 -> PowerShell 7 - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Change Windows Terminal default: PowerShell 5 -> PowerShell 7

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

      Preview Code
      {
         "Content": "Change Windows Terminal default: PowerShell 5 -> PowerShell 7",
         "Description": "This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html b/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html
      index 34dffac16..3c79baa25 100644
      --- a/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html
      +++ b/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html
      @@ -1,4 +1,4 @@
      - Disable Powershell 7 Telemetry - WinUtil Documentation      

      Disable Powershell 7 Telemetry

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

      Preview Code
      {
      + Disable Powershell 7 Telemetry - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Powershell 7 Telemetry

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

      Preview Code
      {
         "Content": "Disable Powershell 7 Telemetry",
         "Description": "This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/RestorePoint/index.html b/dev/tweaks/Essential-Tweaks/RestorePoint/index.html
      index 96ae05d15..5f8e9bf08 100644
      --- a/dev/tweaks/Essential-Tweaks/RestorePoint/index.html
      +++ b/dev/tweaks/Essential-Tweaks/RestorePoint/index.html
      @@ -1,4 +1,4 @@
      - Create Restore Point - WinUtil Documentation      

      Create Restore Point

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Creates a restore point at runtime in case a revert is needed from WinUtil modifications

      Preview Code
      {
      + Create Restore Point - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Create Restore Point

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Creates a restore point at runtime in case a revert is needed from WinUtil modifications

      Preview Code
      {
         "Content": "Create Restore Point",
         "Description": "Creates a restore point at runtime in case a revert is needed from WinUtil modifications",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/Services/index.html b/dev/tweaks/Essential-Tweaks/Services/index.html
      index e1b5a3aa4..b948aa0fc 100644
      --- a/dev/tweaks/Essential-Tweaks/Services/index.html
      +++ b/dev/tweaks/Essential-Tweaks/Services/index.html
      @@ -1,4 +1,4 @@
      - Set Services to Manual - WinUtil Documentation      

      Set Services to Manual

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

      Preview Code
      {
      + Set Services to Manual - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Set Services to Manual

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

      Preview Code
      {
         "Content": "Set Services to Manual",
         "Description": "Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/Storage/index.html b/dev/tweaks/Essential-Tweaks/Storage/index.html
      index 255b4d5cb..513b41e18 100644
      --- a/dev/tweaks/Essential-Tweaks/Storage/index.html
      +++ b/dev/tweaks/Essential-Tweaks/Storage/index.html
      @@ -1,4 +1,4 @@
      - Disable Storage Sense - WinUtil Documentation      

      Disable Storage Sense

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Storage Sense deletes temp files automatically.

      Preview Code
      {
      + Disable Storage Sense - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Storage Sense

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Storage Sense deletes temp files automatically.

      Preview Code
      {
         "Content": "Disable Storage Sense",
         "Description": "Storage Sense deletes temp files automatically.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/Tele/index.html b/dev/tweaks/Essential-Tweaks/Tele/index.html
      index 56f4b56d5..83c7180e4 100644
      --- a/dev/tweaks/Essential-Tweaks/Tele/index.html
      +++ b/dev/tweaks/Essential-Tweaks/Tele/index.html
      @@ -1,4 +1,4 @@
      - Disable Telemetry - WinUtil Documentation      

      Disable Telemetry

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

      Preview Code
      {
      + Disable Telemetry - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Telemetry

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

      Preview Code
      {
         "Content": "Disable Telemetry",
         "Description": "Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Essential-Tweaks/Wifi/index.html b/dev/tweaks/Essential-Tweaks/Wifi/index.html
      index 2c6fa406f..9fc98c3e7 100644
      --- a/dev/tweaks/Essential-Tweaks/Wifi/index.html
      +++ b/dev/tweaks/Essential-Tweaks/Wifi/index.html
      @@ -1,4 +1,4 @@
      - Disable Wifi-Sense - WinUtil Documentation      

      Disable Wifi-Sense

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

      Preview Code
      {
      + Disable Wifi-Sense - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Wifi-Sense

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

      Preview Code
      {
         "Content": "Disable Wifi-Sense",
         "Description": "Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.",
         "category": "Essential Tweaks",
      diff --git a/dev/tweaks/Performance-Plans/AddUltPerf/index.html b/dev/tweaks/Performance-Plans/AddUltPerf/index.html
      index c0ebca77c..3f0983cae 100644
      --- a/dev/tweaks/Performance-Plans/AddUltPerf/index.html
      +++ b/dev/tweaks/Performance-Plans/AddUltPerf/index.html
      @@ -1,4 +1,4 @@
      - Add and Activate Ultimate Performance Profile - WinUtil Documentation      

      Add and Activate Ultimate Performance Profile

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Add and Activate Ultimate Performance Profile - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Add and Activate Ultimate Performance Profile

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Add and Activate Ultimate Performance Profile",
         "category": "Performance Plans",
         "panel": "2",
      diff --git a/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html b/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html
      index 1459107a7..87d789188 100644
      --- a/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html
      +++ b/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html
      @@ -1,4 +1,4 @@
      - Remove Ultimate Performance Profile - WinUtil Documentation      

      Remove Ultimate Performance Profile

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Remove Ultimate Performance Profile - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Remove Ultimate Performance Profile

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Remove Ultimate Performance Profile",
         "category": "Performance Plans",
         "panel": "2",
      diff --git a/dev/tweaks/Shortcuts/Shortcut/index.html b/dev/tweaks/Shortcuts/Shortcut/index.html
      index 96250adb3..a386e45ec 100644
      --- a/dev/tweaks/Shortcuts/Shortcut/index.html
      +++ b/dev/tweaks/Shortcuts/Shortcut/index.html
      @@ -1,4 +1,4 @@
      - Create WinUtil Shortcut - WinUtil Documentation      

      Create WinUtil Shortcut

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Create WinUtil Shortcut - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Create WinUtil Shortcut

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Create WinUtil Shortcut",
         "category": "Shortcuts",
         "panel": "2",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html
      index 588dab3e9..3b042299d 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html
      @@ -1,4 +1,4 @@
      - Adobe Network Block - WinUtil Documentation      

      Adobe Network Block

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

      Preview Code
      {
      + Adobe Network Block - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Adobe Network Block

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

      Preview Code
      {
         "Content": "Adobe Network Block",
         "Description": "Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html
      index e69c362c9..b41b5ee3f 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html
      @@ -1,4 +1,4 @@
      - Remove ALL MS Store Apps - NOT RECOMMENDED - WinUtil Documentation      

      Remove ALL MS Store Apps - NOT RECOMMENDED

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

      Preview Code
      {
      + Remove ALL MS Store Apps - NOT RECOMMENDED - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Remove ALL MS Store Apps - NOT RECOMMENDED

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

      Preview Code
      {
         "Content": "Remove ALL MS Store Apps - NOT RECOMMENDED",
         "Description": "USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html
      index 2da6a2d22..bfed761e8 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html
      @@ -1,4 +1,4 @@
      - Adobe Debloat - WinUtil Documentation      

      Adobe Debloat

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

      Preview Code
      {
      + Adobe Debloat - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Adobe Debloat

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

      Preview Code
      {
         "Content": "Adobe Debloat",
         "Description": "Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html
      index 793605155..9bfd7d59c 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html
      @@ -1,4 +1,4 @@
      - Disable Background Apps - WinUtil Documentation      

      Disable Background Apps

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

      Preview Code
      {
      + Disable Background Apps - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Background Apps

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

      Preview Code
      {
         "Content": "Disable Background Apps",
         "Description": "Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html
      index 6c3d938ca..c82bd8571 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html
      @@ -1,4 +1,4 @@
      - Disable Fullscreen Optimizations - WinUtil Documentation      

      Disable Fullscreen Optimizations

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

      Preview Code
      {
      + Disable Fullscreen Optimizations - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Fullscreen Optimizations

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

      Preview Code
      {
         "Content": "Disable Fullscreen Optimizations",
         "Description": "Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html
      index 3fefb83bf..f15afedfb 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html
      @@ -1,4 +1,4 @@
      - Disable Intel MM (vPro LMS) - WinUtil Documentation      

      Disable Intel MM (vPro LMS)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

      Preview Code
      {
      + Disable Intel MM (vPro LMS) - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Intel MM (vPro LMS)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

      Preview Code
      {
         "Content": "Disable Intel MM (vPro LMS)",
         "Description": "Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html
      index 0098174f1..079965484 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html
      @@ -1,4 +1,4 @@
      - Disable Notification Tray/Calendar - WinUtil Documentation      

      Disable Notification Tray/Calendar

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables all Notifications INCLUDING Calendar

      Preview Code
      {
      + Disable Notification Tray/Calendar - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Notification Tray/Calendar

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables all Notifications INCLUDING Calendar

      Preview Code
      {
         "Content": "Disable Notification Tray/Calendar",
         "Description": "Disables all Notifications INCLUDING Calendar",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html
      index 03e9cf1ab..2f0696e38 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html
      @@ -1,4 +1,4 @@
      - Disable IPv6 - WinUtil Documentation      

      Disable IPv6

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables IPv6.

      Preview Code
      {
      + Disable IPv6 - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable IPv6

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables IPv6.

      Preview Code
      {
         "Content": "Disable IPv6",
         "Description": "Disables IPv6.",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html
      index b67072762..742579342 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html
      @@ -1,4 +1,4 @@
      - Set Display for Performance - WinUtil Documentation      

      Set Display for Performance

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

      Preview Code
      {
      + Set Display for Performance - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Set Display for Performance

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

      Preview Code
      {
         "Content": "Set Display for Performance",
         "Description": "Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html
      index a3e6619a6..30febbc9e 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html
      @@ -1,4 +1,4 @@
      - Run OO Shutup 10 - WinUtil Documentation      

      Run OO Shutup 10

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Run OO Shutup 10 - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Run OO Shutup 10

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Run OO Shutup 10",
         "category": "z__Advanced Tweaks - CAUTION",
         "panel": "1",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html
      index 61d46ec7a..75ca8b24a 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html
      @@ -1,4 +1,4 @@
      - Disable Microsoft Copilot - WinUtil Documentation      

      Disable Microsoft Copilot

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables MS Copilot AI built into Windows since 23H2.

      Preview Code
      {
      + Disable Microsoft Copilot - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Microsoft Copilot

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Disables MS Copilot AI built into Windows since 23H2.

      Preview Code
      {
         "Content": "Disable Microsoft Copilot",
         "Description": "Disables MS Copilot AI built into Windows since 23H2.",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html
      index bc045282e..93be5e8bf 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html
      @@ -1,4 +1,4 @@
      - Remove Microsoft Edge - WinUtil Documentation      

      Remove Microsoft Edge

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

      Preview Code
      {
      + Remove Microsoft Edge - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Remove Microsoft Edge

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

      Preview Code
      {
         "Content": "Remove Microsoft Edge",
         "Description": "Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html
      index 9c6bd8b90..9fa9bd5a3 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html
      @@ -1,4 +1,4 @@
      - Remove Home and Gallery from explorer - WinUtil Documentation      

      Remove Home and Gallery from explorer

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Removes the Home and Gallery from explorer and sets This PC as default

      Preview Code
      {
      + Remove Home and Gallery from explorer - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Remove Home and Gallery from explorer

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Removes the Home and Gallery from explorer and sets This PC as default

      Preview Code
      {
         "Content": "Remove Home and Gallery from explorer",
         "Description": "Removes the Home and Gallery from explorer and sets This PC as default",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html
      index ef3c39e6d..88f6bb440 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html
      @@ -1,4 +1,4 @@
      - Remove OneDrive - WinUtil Documentation      

      Remove OneDrive

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Moves OneDrive files to Default Home Folders and Uninstalls it.

      Preview Code
      {
      + Remove OneDrive - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Remove OneDrive

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Moves OneDrive files to Default Home Folders and Uninstalls it.

      Preview Code
      {
         "Content": "Remove OneDrive",
         "Description": "Moves OneDrive files to Default Home Folders and Uninstalls it.",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html
      index 67a638e1a..a35e15212 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html
      @@ -1,4 +1,4 @@
      - Set Classic Right-Click Menu - WinUtil Documentation      

      Set Classic Right-Click Menu

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

      Preview Code
      {
      + Set Classic Right-Click Menu - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Set Classic Right-Click Menu

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

      Preview Code
      {
         "Content": "Set Classic Right-Click Menu ",
         "Description": "Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html
      index 8cab9ca5b..0ec626b8b 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html
      @@ -1,4 +1,4 @@
      - Disable Teredo - WinUtil Documentation      

      Disable Teredo

      Last Updated: 2024-08-27

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games

      Preview Code
      {
      + Disable Teredo - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Disable Teredo

      Last Updated: 2024-08-27

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games

      Preview Code
      {
         "Content": "Disable Teredo",
         "Description": "Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html
      index 5df6fd494..bf78ef95d 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html
      @@ -1,4 +1,4 @@
      - Set Time to UTC (Dual Boot) - WinUtil Documentation      

      Set Time to UTC (Dual Boot)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

      Preview Code
      {
      + Set Time to UTC (Dual Boot) - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Set Time to UTC (Dual Boot)

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Description

      Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

      Preview Code
      {
         "Content": "Set Time to UTC (Dual Boot)",
         "Description": "Essential for computers that are dual booting. Fixes the time sync with Linux Systems.",
         "category": "z__Advanced Tweaks - CAUTION",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html
      index d9e053a9d..444bee38d 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html
      @@ -1,4 +1,4 @@
      - Undo Selected Tweaks - WinUtil Documentation      

      Undo Selected Tweaks

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Undo Selected Tweaks - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Undo Selected Tweaks

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Undo Selected Tweaks",
         "category": "z__Advanced Tweaks - CAUTION",
         "panel": "1",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html
      index f097ec05e..b575daace 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html
      @@ -1,4 +1,4 @@
      - Run Tweaks - WinUtil Documentation      

      Run Tweaks

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + Run Tweaks - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Run Tweaks

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "Run Tweaks",
         "category": "z__Advanced Tweaks - CAUTION",
         "panel": "1",
      diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html
      index f5ac1c05e..5fff92b95 100644
      --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html
      +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html
      @@ -1,4 +1,4 @@
      - DNS - WinUtil Documentation      

      DNS

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
      + DNS - WinUtil Documentation      
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      DNS

      Last Updated: 2024-08-07

      Info

      The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

      Preview Code
      {
         "Content": "DNS",
         "category": "z__Advanced Tweaks - CAUTION",
         "panel": "1",
      diff --git a/devdocs/index.html b/devdocs/index.html
      index d136ee9ba..c74d69079 100644
      --- a/devdocs/index.html
      +++ b/devdocs/index.html
      @@ -1 +1 @@
      - Dev Docs - WinUtil Documentation      

      Table of Contents

      Tweaks

      z--Advanced-Tweaks---CAUTION

      Essential-Tweaks

      Shortcuts

      Customize-Preferences

      Performance-Plans

      Features

      Legacy-Windows-Panels

      Fixes

      Features

      \ No newline at end of file + Dev Docs - WinUtil Documentation
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      Table of Contents

      Tweaks

      z--Advanced-Tweaks---CAUTION

      Essential-Tweaks

      Shortcuts

      Customize-Preferences

      Performance-Plans

      Features

      Legacy-Windows-Panels

      Fixes

      Features

      \ No newline at end of file diff --git a/faq/index.html b/faq/index.html index f80574452..b92d5ba31 100644 --- a/faq/index.html +++ b/faq/index.html @@ -1 +1 @@ - FAQ - WinUtil Documentation

      FAQ's

      How do I uninstall WinUtil?

      • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.

      I applied a tweak and now something doesn't work, what do I do?

      • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking "Undo Selected Tweaks".
      \ No newline at end of file + FAQ - WinUtil Documentation
      Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

      FAQ's

      How do I uninstall WinUtil?

      • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.

      I applied a tweak and now something doesn't work, what do I do?

      • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking "Undo Selected Tweaks".
      \ No newline at end of file diff --git a/index.html b/index.html index 87a456111..787d793b0 100644 --- a/index.html +++ b/index.html @@ -1,2 +1,2 @@ - WinUtil Documentation

      Welcome to the WinUtil Documentation!

      Version GitHub Downloads (specific asset, all releases) Discord Community Server

      Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you’re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

      Running the latest release of WinUtil

      • You will first need to start a Powershell terminal as Admin.
      • Now you can run the following command:
        irm christitus.com/win | iex
        + WinUtil Documentation      
        Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

        Welcome to the WinUtil Documentation!

        Version GitHub Downloads (specific asset, all releases) Discord Community Server

        Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you’re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

        Running the latest release of WinUtil

        • You will first need to start a Powershell terminal as Admin.
        • Now you can run the following command:
          irm christitus.com/win | iex
           

        Info

        WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

        \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz index adb715f34b16fa3f8a855d280b3339828fe301ad..a78bc3dd5b3e02ba111db9a7bcbf2e195d96c7f0 100644 GIT binary patch delta 13 Ucmb=gXP58h;9%Hwej User Guide - WinUtil Documentation

        Walkthrough

        Install


        • Choose the programs you want to install or upgrade.
          • For programs not currently installed, this action will install them.
          • For programs already installed, this action will update them to the latest version.
        • Click the Install/Upgrade Selected button to start the installation or upgrade process.
        • Simply press the Upgrade All button.
        • This will upgrade all applicable programs that are installed without the need for individual selection.
        • Select the programs you wish to uninstall.
        • Click the Uninstall Selected button to remove the selected programs.
        • Click the Get Installed button.
        • This will scan for and select all installed programs in WinUtil that WinGet supports.
        • Click the Clear Selection button.
        • This will unselect all checked programs.

        Install Image Install Image

        Tip

        If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

        Tweaks


        Tweaks Image Tweaks Image

        Run Tweaks

        • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
        • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
        • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.

        Undo Tweaks

        • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
        • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
        • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.

        Essential Tweaks

        Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

        Advanced Tweaks - CAUTION

        Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

        O&O Shutup

        O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

        DNS

        The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

        • Default: Uses the default DNS settings configured by your ISP or network.
        • DHCP: Automatically acquires DNS settings from the DHCP server.
        • Google: A reliable and fast DNS service provided by Google.
        • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
        • Cloudflare_Malware: Provides additional protection by blocking malware sites.
        • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
        • Level3: Another fast and reliable DNS service option.
        • Open_DNS: Offers customizable filtering and enhanced security features.
        • Quad9: Focuses on security by blocking known malicious domains.

        Customize Preferences

        The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user’s specific needs and preferences.

        Performance Plans

        The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

        Add and activate the Ultimate Performance Profile:

        • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.

        Remove Ultimate Performance Profile:

        • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.

        Shortcuts

        The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

        Config


        Features

        • Install the most used Windows Features by checking the checkbox and clicking "Install Features" to install them.

        • All .Net Frameworks (2, 3, 4)

        • HyperV Virtualization
        • Legacy Media (WMP, DirectPlay)
        • NFS - Network File System
        • Enable Search Box Web Suggestions in Registry (explorer restart)
        • Disables Search Box Web Suggestions in Registry (explorer restart)
        • Enable Daily Registry Backup Task 12:30am
        • Enable Legacy F8 Boot Recovery
        • Disable Legacy F8 Boot Recovery
        • Windows Subsystem for Linux
        • Windows Sandbox

        Fixes

        • Quick fixes for your system if you are having issues.

        • Set Up Autologin

        • Reset Windows Update
        • Reset Network
        • System Corruption Scan
        • WinGet Reinstall
        • Remove Adobe Creative Cloud

        Legacy Windows Panels

        Open old-school Windows panels directly from WinUtil. Following Panels are available:

        • Control Panel
        • Network Connections
        • Power Panel
        • Region
        • Sound Settings
        • System Properties
        • User Accounts

        Updates


        The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

        Default (Out of Box) Settings

        • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
        • Functionality: It will remove any custom Windows update settings previously applied.
        • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
        • Description: This is the recommended setting for all computers.
        • Update Schedule:
          • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
          • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
        • Rationale:
          • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
          • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
        • Description: This setting completely disables all Windows updates.
        • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
        • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
        • Note: It is strongly advised against using this setting due to the heightened security risks.

        Bug

        The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

        MicroWin


        • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.

        Microwin Microwin

        Basic usage

        1. Specify the source Windows ISO to customize.

          • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
        2. Configure the debloat process.

        3. Specify the target location for the new ISO file.
        4. Let the magic happen!

        Heads-up

        This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

        Options

        • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

        Info

        OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

        • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
        • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

        By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

        Driver integration options
        • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
        • Import drivers from the current system will add every third-party driver that is present in your active installation.

        This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

        Custom user settings

        With MicroWin, you can also configure your user before proceeding if you don't want to use the default User account. To do this, simply type the account name (20 characters maximum), and a password. Then, let MicroWin do the rest.

        Info

        Please make sure that you remember your password. MicroWin will configure auto-login settings, so you won't have to enter your password. However, if you are required to enter your password, it's best that you don't forget it.

        Ventoy options
        • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

        Info

        Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

        Automation

        • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

        • On the Install Tab, click "Get Installed", this will get all installed apps supported by Winutil on the system. GetInstalled GetInstalled

        • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file. SettingsExport SettingsExport

        • Copy this file to a USB or somewhere you can use it after Windows installation.

        Tip

        Use the Microwin tab to create a custom Windows image & install the Windows image.

        • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
          iex "& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run"
          + User Guide - WinUtil Documentation      
          Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

          Walkthrough

          Install


          • Choose the programs you want to install or upgrade.
            • For programs not currently installed, this action will install them.
            • For programs already installed, this action will update them to the latest version.
          • Click the Install/Upgrade Selected button to start the installation or upgrade process.
          • Simply press the Upgrade All button.
          • This will upgrade all applicable programs that are installed without the need for individual selection.
          • Select the programs you wish to uninstall.
          • Click the Uninstall Selected button to remove the selected programs.
          • Click the Get Installed button.
          • This will scan for and select all installed programs in WinUtil that WinGet supports.
          • Click the Clear Selection button.
          • This will unselect all checked programs.

          Install Image Install Image

          Tip

          If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

          Tweaks


          Tweaks Image Tweaks Image

          Run Tweaks

          • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
          • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
          • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.

          Undo Tweaks

          • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
          • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
          • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.

          Essential Tweaks

          Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

          Advanced Tweaks - CAUTION

          Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

          O&O Shutup

          O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

          DNS

          The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

          • Default: Uses the default DNS settings configured by your ISP or network.
          • DHCP: Automatically acquires DNS settings from the DHCP server.
          • Google: A reliable and fast DNS service provided by Google.
          • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
          • Cloudflare_Malware: Provides additional protection by blocking malware sites.
          • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
          • Level3: Another fast and reliable DNS service option.
          • Open_DNS: Offers customizable filtering and enhanced security features.
          • Quad9: Focuses on security by blocking known malicious domains.

          Customize Preferences

          The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user’s specific needs and preferences.

          Performance Plans

          The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

          Add and activate the Ultimate Performance Profile:

          • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.

          Remove Ultimate Performance Profile:

          • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.

          Shortcuts

          The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

          Config


          Features

          • Install the most used Windows Features by checking the checkbox and clicking "Install Features" to install them.

          • All .Net Frameworks (2, 3, 4)

          • HyperV Virtualization
          • Legacy Media (WMP, DirectPlay)
          • NFS - Network File System
          • Enable Search Box Web Suggestions in Registry (explorer restart)
          • Disables Search Box Web Suggestions in Registry (explorer restart)
          • Enable Daily Registry Backup Task 12:30am
          • Enable Legacy F8 Boot Recovery
          • Disable Legacy F8 Boot Recovery
          • Windows Subsystem for Linux
          • Windows Sandbox

          Fixes

          • Quick fixes for your system if you are having issues.

          • Set Up Autologin

          • Reset Windows Update
          • Reset Network
          • System Corruption Scan
          • WinGet Reinstall
          • Remove Adobe Creative Cloud

          Legacy Windows Panels

          Open old-school Windows panels directly from WinUtil. Following Panels are available:

          • Control Panel
          • Network Connections
          • Power Panel
          • Region
          • Sound Settings
          • System Properties
          • User Accounts

          Updates


          The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

          Default (Out of Box) Settings

          • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
          • Functionality: It will remove any custom Windows update settings previously applied.
          • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
          • Description: This is the recommended setting for all computers.
          • Update Schedule:
            • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
            • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
          • Rationale:
            • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
            • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
          • Description: This setting completely disables all Windows updates.
          • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
          • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
          • Note: It is strongly advised against using this setting due to the heightened security risks.

          Bug

          The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

          MicroWin


          • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.

          Microwin Microwin

          Basic usage

          1. Specify the source Windows ISO to customize.

            • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
          2. Configure the debloat process.

          3. Specify the target location for the new ISO file.
          4. Let the magic happen!

          Heads-up

          This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

          Options

          • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

          Info

          OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

          • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
          • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

          By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

          Driver integration options
          • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
          • Import drivers from the current system will add every third-party driver that is present in your active installation.

          This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

          Custom user settings

          With MicroWin, you can also configure your user before proceeding if you don't want to use the default User account. To do this, simply type the account name (20 characters maximum), and a password. Then, let MicroWin do the rest.

          Info

          Please make sure that you remember your password. MicroWin will configure auto-login settings, so you won't have to enter your password. However, if you are required to enter your password, it's best that you don't forget it.

          Ventoy options
          • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

          Info

          Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

          Automation

          • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

          • On the Install Tab, click "Get Installed", this will get all installed apps supported by Winutil on the system. GetInstalled GetInstalled

          • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file. SettingsExport SettingsExport

          • Copy this file to a USB or somewhere you can use it after Windows installation.

          Tip

          Use the Microwin tab to create a custom Windows image & install the Windows image.

          • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
            iex "& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run"
             
          • Have a cup of coffee! Come back when it's done.
          \ No newline at end of file From 6194f997b26c1beb45dc4e37c975f4b705356036 Mon Sep 17 00:00:00 2001 From: <> Date: Thu, 29 Aug 2024 18:51:04 +0000 Subject: [PATCH 09/10] Deployed c1dd88d with MkDocs version: 1.6.0 --- 404.html | 2 +- KnownIssues/index.html | 2 +- contribute/index.html | 2 +- dev/features/Features/DisableLegacyRecovery/index.html | 2 +- dev/features/Features/DisableSearchSuggestions/index.html | 2 +- dev/features/Features/EnableLegacyRecovery/index.html | 2 +- dev/features/Features/EnableSearchSuggestions/index.html | 2 +- dev/features/Features/Install/index.html | 2 +- dev/features/Features/RegBackup/index.html | 2 +- dev/features/Features/Sandbox/index.html | 2 +- dev/features/Features/dotnet/index.html | 2 +- dev/features/Features/hyperv/index.html | 2 +- dev/features/Features/legacymedia/index.html | 2 +- dev/features/Features/nfs/index.html | 2 +- dev/features/Features/wsl/index.html | 2 +- dev/features/Fixes/Autologin/index.html | 2 +- dev/features/Fixes/DISM/index.html | 2 +- dev/features/Fixes/Network/index.html | 2 +- dev/features/Fixes/RunAdobeCCCleanerTool/index.html | 2 +- dev/features/Fixes/Update/index.html | 2 +- dev/features/Fixes/Winget/index.html | 2 +- dev/features/Legacy-Windows-Panels/control/index.html | 2 +- dev/features/Legacy-Windows-Panels/network/index.html | 2 +- dev/features/Legacy-Windows-Panels/power/index.html | 2 +- dev/features/Legacy-Windows-Panels/region/index.html | 2 +- dev/features/Legacy-Windows-Panels/sound/index.html | 2 +- dev/features/Legacy-Windows-Panels/system/index.html | 2 +- dev/features/Legacy-Windows-Panels/user/index.html | 2 +- dev/tweaks/Customize-Preferences/BingSearch/index.html | 2 +- dev/tweaks/Customize-Preferences/DarkMode/index.html | 2 +- dev/tweaks/Customize-Preferences/DetailedBSoD/index.html | 2 +- dev/tweaks/Customize-Preferences/HiddenFiles/index.html | 2 +- dev/tweaks/Customize-Preferences/MouseAcceleration/index.html | 2 +- dev/tweaks/Customize-Preferences/NumLock/index.html | 2 +- dev/tweaks/Customize-Preferences/ShowExt/index.html | 2 +- dev/tweaks/Customize-Preferences/SnapFlyout/index.html | 2 +- dev/tweaks/Customize-Preferences/SnapSuggestion/index.html | 2 +- dev/tweaks/Customize-Preferences/SnapWindow/index.html | 2 +- dev/tweaks/Customize-Preferences/StickyKeys/index.html | 2 +- dev/tweaks/Customize-Preferences/TaskView/index.html | 2 +- dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html | 2 +- dev/tweaks/Customize-Preferences/TaskbarSearch/index.html | 2 +- dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html | 2 +- dev/tweaks/Customize-Preferences/VerboseLogon/index.html | 2 +- dev/tweaks/Essential-Tweaks/AH/index.html | 2 +- dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html | 2 +- dev/tweaks/Essential-Tweaks/DVR/index.html | 2 +- dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html | 2 +- dev/tweaks/Essential-Tweaks/DiskCleanup/index.html | 2 +- dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html | 2 +- dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html | 2 +- dev/tweaks/Essential-Tweaks/Hiber/index.html | 2 +- dev/tweaks/Essential-Tweaks/Home/index.html | 2 +- dev/tweaks/Essential-Tweaks/IPv46/index.html | 2 +- dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html | 2 +- dev/tweaks/Essential-Tweaks/Loc/index.html | 2 +- dev/tweaks/Essential-Tweaks/Powershell7/index.html | 2 +- dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html | 2 +- dev/tweaks/Essential-Tweaks/RestorePoint/index.html | 2 +- dev/tweaks/Essential-Tweaks/Services/index.html | 2 +- dev/tweaks/Essential-Tweaks/Storage/index.html | 2 +- dev/tweaks/Essential-Tweaks/Tele/index.html | 2 +- dev/tweaks/Essential-Tweaks/Wifi/index.html | 2 +- dev/tweaks/Performance-Plans/AddUltPerf/index.html | 2 +- dev/tweaks/Performance-Plans/RemoveUltPerf/index.html | 2 +- dev/tweaks/Shortcuts/Shortcut/index.html | 2 +- .../z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html | 2 +- .../z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html | 2 +- .../DisableNotifications/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html | 2 +- .../z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html | 2 +- .../z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html | 2 +- .../z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html | 2 +- .../z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html | 2 +- dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html | 2 +- devdocs/index.html | 2 +- faq/index.html | 2 +- index.html | 2 +- userguide/index.html | 2 +- 90 files changed, 90 insertions(+), 90 deletions(-) diff --git a/404.html b/404.html index e5e067c7d..294709303 100644 --- a/404.html +++ b/404.html @@ -1 +1 @@ - WinUtil Documentation
          Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

          404 - Not found

          \ No newline at end of file + WinUtil Documentation
          Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

          404 - Not found

          \ No newline at end of file diff --git a/KnownIssues/index.html b/KnownIssues/index.html index 6bd50eed4..fc053e15b 100644 --- a/KnownIssues/index.html +++ b/KnownIssues/index.html @@ -1,4 +1,4 @@ - Known Issues - WinUtil Documentation
          Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

          Known Issues

          Launch Issues:

          • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
          • If possible: Allow script in Anti-Virus software settings.

          • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

          [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')
          + Known Issues - WinUtil Documentation      
          Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

          Known Issues

          Launch Issues:

          • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
          • If possible: Allow script in Anti-Virus software settings.

          • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

          [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')
           

          If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

          Provider Primary DNS Secondary DNS
          Cloudflare 1.1.1.1 1.0.0.1
          Google 8.8.8.8 8.8.4.4
          • Script doesn't run/PowerShell crashes:
          • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
          • Run:
            Set-ExecutionPolicy Unrestricted -Scope Process -Force
             
          • Run:
            irm christitus.com/win | iex
             

          Other Issues:

          • Windows taking longer to shut down:
          • #69 Turn on fast startup: Press Windows key + R, then type:
            control /name Microsoft.PowerOptions /page pageGlobalSettings
            diff --git a/contribute/index.html b/contribute/index.html
            index 7a0b2f8ba..3ed6777b2 100644
            --- a/contribute/index.html
            +++ b/contribute/index.html
            @@ -1,4 +1,4 @@
            - Contributing Guide - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            How to Contribute?

            Testing

            • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!

            Run the latest pre-release

            irm christitus.com/windev | iex
            + Contributing Guide - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            How to Contribute?

            Testing

            • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!

            Run the latest pre-release

            irm christitus.com/windev | iex
             

            Keep in mind

            This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

            Issues

            • If you encounter any challenges or problems with the script, I kindly request that you submit them via the "Issues" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.

            Contribute Code

            • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

            • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

            Important

            Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

            • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

            • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

            Note

            When creating a function, please include "WPF" or "WinUtil" in the file name so it can be loaded into the runspace.

            Walk through

            Overview

            %%{init: {"flowchart": {"curve": "cardinal"}} }%%
             graph TD
               A[Fork Project] --> B[Clone Repository];
            diff --git a/dev/features/Features/DisableLegacyRecovery/index.html b/dev/features/Features/DisableLegacyRecovery/index.html
            index 2f6567dae..60ef2b708 100644
            --- a/dev/features/Features/DisableLegacyRecovery/index.html
            +++ b/dev/features/Features/DisableLegacyRecovery/index.html
            @@ -1,4 +1,4 @@
            - Disable Legacy F8 Boot Recovery - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Legacy F8 Boot Recovery

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

            Preview Code
            {
            + Disable Legacy F8 Boot Recovery - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Legacy F8 Boot Recovery

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

            Preview Code
            {
               "Content": "Disable Legacy F8 Boot Recovery",
               "Description": "Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.",
               "category": "Features",
            diff --git a/dev/features/Features/DisableSearchSuggestions/index.html b/dev/features/Features/DisableSearchSuggestions/index.html
            index 909afaedc..08834d04c 100644
            --- a/dev/features/Features/DisableSearchSuggestions/index.html
            +++ b/dev/features/Features/DisableSearchSuggestions/index.html
            @@ -1,4 +1,4 @@
            - Disable Search Box Web Suggestions in Registry(explorer restart) - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Search Box Web Suggestions in Registry(explorer restart)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables web suggestions when searching using Windows Search.

            Preview Code
            {
            + Disable Search Box Web Suggestions in Registry(explorer restart) - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Search Box Web Suggestions in Registry(explorer restart)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables web suggestions when searching using Windows Search.

            Preview Code
            {
               "Content": "Disable Search Box Web Suggestions in Registry(explorer restart)",
               "Description": "Disables web suggestions when searching using Windows Search.",
               "category": "Features",
            diff --git a/dev/features/Features/EnableLegacyRecovery/index.html b/dev/features/Features/EnableLegacyRecovery/index.html
            index 1e7caba99..5bd7643d3 100644
            --- a/dev/features/Features/EnableLegacyRecovery/index.html
            +++ b/dev/features/Features/EnableLegacyRecovery/index.html
            @@ -1,4 +1,4 @@
            - Enable Legacy F8 Boot Recovery - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Enable Legacy F8 Boot Recovery

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

            Preview Code
            {
            + Enable Legacy F8 Boot Recovery - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Enable Legacy F8 Boot Recovery

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

            Preview Code
            {
               "Content": "Enable Legacy F8 Boot Recovery",
               "Description": "Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.",
               "category": "Features",
            diff --git a/dev/features/Features/EnableSearchSuggestions/index.html b/dev/features/Features/EnableSearchSuggestions/index.html
            index 14fb9b43d..db35cf2dd 100644
            --- a/dev/features/Features/EnableSearchSuggestions/index.html
            +++ b/dev/features/Features/EnableSearchSuggestions/index.html
            @@ -1,4 +1,4 @@
            - Enable Search Box Web Suggestions in Registry(explorer restart) - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Enable Search Box Web Suggestions in Registry(explorer restart)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enables web suggestions when searching using Windows Search.

            Preview Code
            {
            + Enable Search Box Web Suggestions in Registry(explorer restart) - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Enable Search Box Web Suggestions in Registry(explorer restart)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enables web suggestions when searching using Windows Search.

            Preview Code
            {
               "Content": "Enable Search Box Web Suggestions in Registry(explorer restart)",
               "Description": "Enables web suggestions when searching using Windows Search.",
               "category": "Features",
            diff --git a/dev/features/Features/Install/index.html b/dev/features/Features/Install/index.html
            index 15895b4ec..c92a42dce 100644
            --- a/dev/features/Features/Install/index.html
            +++ b/dev/features/Features/Install/index.html
            @@ -1,4 +1,4 @@
            - Install Features - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Install Features

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Install Features - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Install Features

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Install Features",
               "category": "Features",
               "panel": "1",
            diff --git a/dev/features/Features/RegBackup/index.html b/dev/features/Features/RegBackup/index.html
            index 98c6c4c40..ae41e1e63 100644
            --- a/dev/features/Features/RegBackup/index.html
            +++ b/dev/features/Features/RegBackup/index.html
            @@ -1,4 +1,4 @@
            - Enable Daily Registry Backup Task 12.30am - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Enable Daily Registry Backup Task 12.30am

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

            Preview Code
            {
            + Enable Daily Registry Backup Task 12.30am - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Enable Daily Registry Backup Task 12.30am

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

            Preview Code
            {
               "Content": "Enable Daily Registry Backup Task 12.30am",
               "Description": "Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.",
               "category": "Features",
            diff --git a/dev/features/Features/Sandbox/index.html b/dev/features/Features/Sandbox/index.html
            index 50b9daf7e..273229b6c 100644
            --- a/dev/features/Features/Sandbox/index.html
            +++ b/dev/features/Features/Sandbox/index.html
            @@ -1,4 +1,4 @@
            - Windows Sandbox - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Windows Sandbox

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

            Preview Code
            {
            + Windows Sandbox - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Windows Sandbox

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

            Preview Code
            {
               "Content": "Windows Sandbox",
               "category": "Features",
               "panel": "1",
            diff --git a/dev/features/Features/dotnet/index.html b/dev/features/Features/dotnet/index.html
            index 791fb93e8..b58957e6b 100644
            --- a/dev/features/Features/dotnet/index.html
            +++ b/dev/features/Features/dotnet/index.html
            @@ -1,4 +1,4 @@
            - All .Net Framework (2,3,4) - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            All .Net Framework (2,3,4)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

            Preview Code
            {
            + All .Net Framework (2,3,4) - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            All .Net Framework (2,3,4)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

            Preview Code
            {
               "Content": "All .Net Framework (2,3,4)",
               "Description": ".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.",
               "category": "Features",
            diff --git a/dev/features/Features/hyperv/index.html b/dev/features/Features/hyperv/index.html
            index 0452e28b0..656350065 100644
            --- a/dev/features/Features/hyperv/index.html
            +++ b/dev/features/Features/hyperv/index.html
            @@ -1,4 +1,4 @@
            - HyperV Virtualization - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            HyperV Virtualization

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

            Preview Code
            {
            + HyperV Virtualization - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            HyperV Virtualization

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

            Preview Code
            {
               "Content": "HyperV Virtualization",
               "Description": "Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.",
               "category": "Features",
            diff --git a/dev/features/Features/legacymedia/index.html b/dev/features/Features/legacymedia/index.html
            index ee0dec551..26f63db18 100644
            --- a/dev/features/Features/legacymedia/index.html
            +++ b/dev/features/Features/legacymedia/index.html
            @@ -1,4 +1,4 @@
            - Legacy Media (WMP, DirectPlay) - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Legacy Media (WMP, DirectPlay)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enables legacy programs from previous versions of windows

            Preview Code
            {
            + Legacy Media (WMP, DirectPlay) - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Legacy Media (WMP, DirectPlay)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enables legacy programs from previous versions of windows

            Preview Code
            {
               "Content": "Legacy Media (WMP, DirectPlay)",
               "Description": "Enables legacy programs from previous versions of windows",
               "category": "Features",
            diff --git a/dev/features/Features/nfs/index.html b/dev/features/Features/nfs/index.html
            index 35b03eb5a..7fb6f0fd4 100644
            --- a/dev/features/Features/nfs/index.html
            +++ b/dev/features/Features/nfs/index.html
            @@ -1,4 +1,4 @@
            - NFS - Network File System - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            NFS - Network File System

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Network File System (NFS) is a mechanism for storing files on a network.

            Preview Code
            {
            + NFS - Network File System - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            NFS - Network File System

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Network File System (NFS) is a mechanism for storing files on a network.

            Preview Code
            {
               "Content": "NFS - Network File System",
               "Description": "Network File System (NFS) is a mechanism for storing files on a network.",
               "category": "Features",
            diff --git a/dev/features/Features/wsl/index.html b/dev/features/Features/wsl/index.html
            index 163b7c3ef..e8ea65e17 100644
            --- a/dev/features/Features/wsl/index.html
            +++ b/dev/features/Features/wsl/index.html
            @@ -1,4 +1,4 @@
            - Windows Subsystem for Linux - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Windows Subsystem for Linux

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

            Preview Code
            {
            + Windows Subsystem for Linux - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Windows Subsystem for Linux

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

            Preview Code
            {
               "Content": "Windows Subsystem for Linux",
               "Description": "Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.",
               "category": "Features",
            diff --git a/dev/features/Fixes/Autologin/index.html b/dev/features/Fixes/Autologin/index.html
            index 6df84f8f9..d17c461de 100644
            --- a/dev/features/Fixes/Autologin/index.html
            +++ b/dev/features/Fixes/Autologin/index.html
            @@ -1,4 +1,4 @@
            - Set Up Autologin - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Up Autologin

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Set Up Autologin - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Up Autologin

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Set Up Autologin",
               "category": "Fixes",
               "Order": "a040_",
            diff --git a/dev/features/Fixes/DISM/index.html b/dev/features/Fixes/DISM/index.html
            index d4889e38a..987985bd4 100644
            --- a/dev/features/Fixes/DISM/index.html
            +++ b/dev/features/Fixes/DISM/index.html
            @@ -1,4 +1,4 @@
            - System Corruption Scan - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            System Corruption Scan

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + System Corruption Scan - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            System Corruption Scan

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "System Corruption Scan",
               "category": "Fixes",
               "panel": "1",
            diff --git a/dev/features/Fixes/Network/index.html b/dev/features/Fixes/Network/index.html
            index 49a27e2c1..bd2928a2f 100644
            --- a/dev/features/Fixes/Network/index.html
            +++ b/dev/features/Fixes/Network/index.html
            @@ -1,4 +1,4 @@
            - Reset Network - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Reset Network

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Reset Network - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Reset Network

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Reset Network",
               "category": "Fixes",
               "Order": "a042_",
            diff --git a/dev/features/Fixes/RunAdobeCCCleanerTool/index.html b/dev/features/Fixes/RunAdobeCCCleanerTool/index.html
            index 580771af5..998fc83a1 100644
            --- a/dev/features/Fixes/RunAdobeCCCleanerTool/index.html
            +++ b/dev/features/Fixes/RunAdobeCCCleanerTool/index.html
            @@ -1,4 +1,4 @@
            - Remove Adobe Creative Cloud - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove Adobe Creative Cloud

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Remove Adobe Creative Cloud - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove Adobe Creative Cloud

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Remove Adobe Creative Cloud",
               "category": "Fixes",
               "panel": "1",
            diff --git a/dev/features/Fixes/Update/index.html b/dev/features/Fixes/Update/index.html
            index 385ac79a1..322d73b5f 100644
            --- a/dev/features/Fixes/Update/index.html
            +++ b/dev/features/Fixes/Update/index.html
            @@ -1,4 +1,4 @@
            - Reset Windows Update - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Reset Windows Update

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Reset Windows Update - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Reset Windows Update

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Reset Windows Update",
               "category": "Fixes",
               "panel": "1",
            diff --git a/dev/features/Fixes/Winget/index.html b/dev/features/Fixes/Winget/index.html
            index 2a4005c04..e44637b7e 100644
            --- a/dev/features/Fixes/Winget/index.html
            +++ b/dev/features/Fixes/Winget/index.html
            @@ -1,4 +1,4 @@
            - WinGet Reinstall - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            WinGet Reinstall

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + WinGet Reinstall - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            WinGet Reinstall

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "WinGet Reinstall",
               "category": "Fixes",
               "panel": "1",
            diff --git a/dev/features/Legacy-Windows-Panels/control/index.html b/dev/features/Legacy-Windows-Panels/control/index.html
            index 38c4a5f92..254da4dac 100644
            --- a/dev/features/Legacy-Windows-Panels/control/index.html
            +++ b/dev/features/Legacy-Windows-Panels/control/index.html
            @@ -1,4 +1,4 @@
            - Control Panel - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Control Panel

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Control Panel - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Control Panel

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Control Panel",
               "category": "Legacy Windows Panels",
               "panel": "2",
            diff --git a/dev/features/Legacy-Windows-Panels/network/index.html b/dev/features/Legacy-Windows-Panels/network/index.html
            index 3b11268f8..affb152e0 100644
            --- a/dev/features/Legacy-Windows-Panels/network/index.html
            +++ b/dev/features/Legacy-Windows-Panels/network/index.html
            @@ -1,4 +1,4 @@
            - Network Connections - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Network Connections

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Network Connections - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Network Connections

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Network Connections",
               "category": "Legacy Windows Panels",
               "panel": "2",
            diff --git a/dev/features/Legacy-Windows-Panels/power/index.html b/dev/features/Legacy-Windows-Panels/power/index.html
            index 621238855..07f0608d8 100644
            --- a/dev/features/Legacy-Windows-Panels/power/index.html
            +++ b/dev/features/Legacy-Windows-Panels/power/index.html
            @@ -1,4 +1,4 @@
            - Power Panel - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Power Panel

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Power Panel - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Power Panel

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Power Panel",
               "category": "Legacy Windows Panels",
               "panel": "2",
            diff --git a/dev/features/Legacy-Windows-Panels/region/index.html b/dev/features/Legacy-Windows-Panels/region/index.html
            index b0ca11df0..8261db8c8 100644
            --- a/dev/features/Legacy-Windows-Panels/region/index.html
            +++ b/dev/features/Legacy-Windows-Panels/region/index.html
            @@ -1,4 +1,4 @@
            - Region - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Region

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Region - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Region

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Region",
               "category": "Legacy Windows Panels",
               "panel": "2",
            diff --git a/dev/features/Legacy-Windows-Panels/sound/index.html b/dev/features/Legacy-Windows-Panels/sound/index.html
            index 0b767c402..c6f62ae3d 100644
            --- a/dev/features/Legacy-Windows-Panels/sound/index.html
            +++ b/dev/features/Legacy-Windows-Panels/sound/index.html
            @@ -1,4 +1,4 @@
            - Sound Settings - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Sound Settings

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Sound Settings - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Sound Settings

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Sound Settings",
               "category": "Legacy Windows Panels",
               "panel": "2",
            diff --git a/dev/features/Legacy-Windows-Panels/system/index.html b/dev/features/Legacy-Windows-Panels/system/index.html
            index bb4313a70..846290d6b 100644
            --- a/dev/features/Legacy-Windows-Panels/system/index.html
            +++ b/dev/features/Legacy-Windows-Panels/system/index.html
            @@ -1,4 +1,4 @@
            - System Properties - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            System Properties

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + System Properties - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            System Properties

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "System Properties",
               "category": "Legacy Windows Panels",
               "panel": "2",
            diff --git a/dev/features/Legacy-Windows-Panels/user/index.html b/dev/features/Legacy-Windows-Panels/user/index.html
            index a225e2e10..f20308df3 100644
            --- a/dev/features/Legacy-Windows-Panels/user/index.html
            +++ b/dev/features/Legacy-Windows-Panels/user/index.html
            @@ -1,4 +1,4 @@
            - User Accounts - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            User Accounts

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + User Accounts - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            User Accounts

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "User Accounts",
               "category": "Legacy Windows Panels",
               "panel": "2",
            diff --git a/dev/tweaks/Customize-Preferences/BingSearch/index.html b/dev/tweaks/Customize-Preferences/BingSearch/index.html
            index f41779309..9ca66c241 100644
            --- a/dev/tweaks/Customize-Preferences/BingSearch/index.html
            +++ b/dev/tweaks/Customize-Preferences/BingSearch/index.html
            @@ -1,4 +1,4 @@
            - Bing Search in Start Menu - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Bing Search in Start Menu

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If enable then includes web search results from Bing in your Start Menu search.

            Preview Code
            {
            + Bing Search in Start Menu - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Bing Search in Start Menu

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If enable then includes web search results from Bing in your Start Menu search.

            Preview Code
            {
               "Content": "Bing Search in Start Menu",
               "Description": "If enable then includes web search results from Bing in your Start Menu search.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/DarkMode/index.html b/dev/tweaks/Customize-Preferences/DarkMode/index.html
            index 6ae4379e5..bf23c2af6 100644
            --- a/dev/tweaks/Customize-Preferences/DarkMode/index.html
            +++ b/dev/tweaks/Customize-Preferences/DarkMode/index.html
            @@ -1,4 +1,4 @@
            - Dark Theme for Windows - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Dark Theme for Windows

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enable/Disable Dark Mode.

            Preview Code
            {
            + Dark Theme for Windows - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Dark Theme for Windows

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enable/Disable Dark Mode.

            Preview Code
            {
               "Content": "Dark Theme for Windows",
               "Description": "Enable/Disable Dark Mode.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html b/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html
            index 330cb8318..87a022314 100644
            --- a/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html
            +++ b/dev/tweaks/Customize-Preferences/DetailedBSoD/index.html
            @@ -1,4 +1,4 @@
            - Detailed BSoD - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Detailed BSoD

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

            Preview Code
            {
            + Detailed BSoD - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Detailed BSoD

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

            Preview Code
            {
               "Content": "Detailed BSoD",
               "Description": "If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/HiddenFiles/index.html b/dev/tweaks/Customize-Preferences/HiddenFiles/index.html
            index bbb048649..b81fea881 100644
            --- a/dev/tweaks/Customize-Preferences/HiddenFiles/index.html
            +++ b/dev/tweaks/Customize-Preferences/HiddenFiles/index.html
            @@ -1,4 +1,4 @@
            - Show Hidden Files - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Show Hidden Files

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then Hidden Files will be shown.

            Preview Code
            {
            + Show Hidden Files - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Show Hidden Files

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then Hidden Files will be shown.

            Preview Code
            {
               "Content": "Show Hidden Files",
               "Description": "If Enabled then Hidden Files will be shown.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html b/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html
            index ceb14cf3c..bcf12ba2d 100644
            --- a/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html
            +++ b/dev/tweaks/Customize-Preferences/MouseAcceleration/index.html
            @@ -1,4 +1,4 @@
            - Mouse Acceleration - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Mouse Acceleration

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

            Preview Code
            {
            + Mouse Acceleration - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Mouse Acceleration

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

            Preview Code
            {
               "Content": "Mouse Acceleration",
               "Description": "If Enabled then Cursor movement is affected by the speed of your physical mouse movements.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/NumLock/index.html b/dev/tweaks/Customize-Preferences/NumLock/index.html
            index c2cd4a5e2..4c0ff3a70 100644
            --- a/dev/tweaks/Customize-Preferences/NumLock/index.html
            +++ b/dev/tweaks/Customize-Preferences/NumLock/index.html
            @@ -1,4 +1,4 @@
            - NumLock on Startup - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            NumLock on Startup

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Toggle the Num Lock key state when your computer starts.

            Preview Code
            {
            + NumLock on Startup - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            NumLock on Startup

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Toggle the Num Lock key state when your computer starts.

            Preview Code
            {
               "Content": "NumLock on Startup",
               "Description": "Toggle the Num Lock key state when your computer starts.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/ShowExt/index.html b/dev/tweaks/Customize-Preferences/ShowExt/index.html
            index 6792397ed..9b0efb26e 100644
            --- a/dev/tweaks/Customize-Preferences/ShowExt/index.html
            +++ b/dev/tweaks/Customize-Preferences/ShowExt/index.html
            @@ -1,4 +1,4 @@
            - Show File Extensions - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Show File Extensions

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If enabled then File extensions (e.g., .txt, .jpg) are visible.

            Preview Code
            {
            + Show File Extensions - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Show File Extensions

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If enabled then File extensions (e.g., .txt, .jpg) are visible.

            Preview Code
            {
               "Content": "Show File Extensions",
               "Description": "If enabled then File extensions (e.g., .txt, .jpg) are visible.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/SnapFlyout/index.html b/dev/tweaks/Customize-Preferences/SnapFlyout/index.html
            index d40fc6b52..0e51302d5 100644
            --- a/dev/tweaks/Customize-Preferences/SnapFlyout/index.html
            +++ b/dev/tweaks/Customize-Preferences/SnapFlyout/index.html
            @@ -1,4 +1,4 @@
            - Snap Assist Flyout - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Snap Assist Flyout

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If enabled then Snap preview is disabled when maximize button is hovered.

            Preview Code
            {
            + Snap Assist Flyout - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Snap Assist Flyout

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If enabled then Snap preview is disabled when maximize button is hovered.

            Preview Code
            {
               "Content": "Snap Assist Flyout",
               "Description": "If enabled then Snap preview is disabled when maximize button is hovered.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html b/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html
            index a6f8e2238..69b2761db 100644
            --- a/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html
            +++ b/dev/tweaks/Customize-Preferences/SnapSuggestion/index.html
            @@ -1,4 +1,4 @@
            - Snap Assist Suggestion - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Snap Assist Suggestion

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If enabled then you will get suggestions to snap other applications in the left over spaces.

            Preview Code
            {
            + Snap Assist Suggestion - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Snap Assist Suggestion

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If enabled then you will get suggestions to snap other applications in the left over spaces.

            Preview Code
            {
               "Content": "Snap Assist Suggestion",
               "Description": "If enabled then you will get suggestions to snap other applications in the left over spaces.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/SnapWindow/index.html b/dev/tweaks/Customize-Preferences/SnapWindow/index.html
            index 2ba28898c..9e48ec6ed 100644
            --- a/dev/tweaks/Customize-Preferences/SnapWindow/index.html
            +++ b/dev/tweaks/Customize-Preferences/SnapWindow/index.html
            @@ -1,4 +1,4 @@
            - Snap Window - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Snap Window

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If enabled you can align windows by dragging them. | Relogin Required

            Preview Code
            {
            + Snap Window - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Snap Window

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If enabled you can align windows by dragging them. | Relogin Required

            Preview Code
            {
               "Content": "Snap Window",
               "Description": "If enabled you can align windows by dragging them. | Relogin Required",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/StickyKeys/index.html b/dev/tweaks/Customize-Preferences/StickyKeys/index.html
            index 8e934a205..aea8e3eb1 100644
            --- a/dev/tweaks/Customize-Preferences/StickyKeys/index.html
            +++ b/dev/tweaks/Customize-Preferences/StickyKeys/index.html
            @@ -1,4 +1,4 @@
            - Sticky Keys - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Sticky Keys

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

            Preview Code
            {
            + Sticky Keys - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Sticky Keys

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

            Preview Code
            {
               "Content": "Sticky Keys",
               "Description": "If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/TaskView/index.html b/dev/tweaks/Customize-Preferences/TaskView/index.html
            index 1f3059c47..5c20a822b 100644
            --- a/dev/tweaks/Customize-Preferences/TaskView/index.html
            +++ b/dev/tweaks/Customize-Preferences/TaskView/index.html
            @@ -1,4 +1,4 @@
            - Task View Button in Taskbar - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Task View Button in Taskbar

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then Task View Button in Taskbar will be shown.

            Preview Code
            {
            + Task View Button in Taskbar - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Task View Button in Taskbar

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then Task View Button in Taskbar will be shown.

            Preview Code
            {
               "Content": "Task View Button in Taskbar",
               "Description": "If Enabled then Task View Button in Taskbar will be shown.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html b/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html
            index 8d8704a3c..99caca6a6 100644
            --- a/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html
            +++ b/dev/tweaks/Customize-Preferences/TaskbarAlignment/index.html
            @@ -1,4 +1,4 @@
            - Center Taskbar Items - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Center Taskbar Items

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

            Preview Code
            {
            + Center Taskbar Items - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Center Taskbar Items

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

            Preview Code
            {
               "Content": "Center Taskbar Items",
               "Description": "[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html b/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html
            index d92a5fe40..9a5d07120 100644
            --- a/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html
            +++ b/dev/tweaks/Customize-Preferences/TaskbarSearch/index.html
            @@ -1,4 +1,4 @@
            - Search Button in Taskbar - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Search Button in Taskbar

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled Search Button will be on the taskbar.

            Preview Code
            {
            + Search Button in Taskbar - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Search Button in Taskbar

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled Search Button will be on the taskbar.

            Preview Code
            {
               "Content": "Search Button in Taskbar",
               "Description": "If Enabled Search Button will be on the taskbar.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html b/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html
            index 8de78f9a8..af94d6282 100644
            --- a/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html
            +++ b/dev/tweaks/Customize-Preferences/TaskbarWidgets/index.html
            @@ -1,4 +1,4 @@
            - Widgets Button in Taskbar - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Widgets Button in Taskbar

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then Widgets Button in Taskbar will be shown.

            Preview Code
            {
            + Widgets Button in Taskbar - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Widgets Button in Taskbar

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            If Enabled then Widgets Button in Taskbar will be shown.

            Preview Code
            {
               "Content": "Widgets Button in Taskbar",
               "Description": "If Enabled then Widgets Button in Taskbar will be shown.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Customize-Preferences/VerboseLogon/index.html b/dev/tweaks/Customize-Preferences/VerboseLogon/index.html
            index 061a4478e..11ca4b42f 100644
            --- a/dev/tweaks/Customize-Preferences/VerboseLogon/index.html
            +++ b/dev/tweaks/Customize-Preferences/VerboseLogon/index.html
            @@ -1,4 +1,4 @@
            - Verbose Messages During Logon - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Verbose Messages During Logon

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Show detailed messages during the login process for troubleshooting and diagnostics.

            Preview Code
            {
            + Verbose Messages During Logon - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Verbose Messages During Logon

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Show detailed messages during the login process for troubleshooting and diagnostics.

            Preview Code
            {
               "Content": "Verbose Messages During Logon",
               "Description": "Show detailed messages during the login process for troubleshooting and diagnostics.",
               "category": "Customize Preferences",
            diff --git a/dev/tweaks/Essential-Tweaks/AH/index.html b/dev/tweaks/Essential-Tweaks/AH/index.html
            index e58f5201b..e34d62ff3 100644
            --- a/dev/tweaks/Essential-Tweaks/AH/index.html
            +++ b/dev/tweaks/Essential-Tweaks/AH/index.html
            @@ -1,4 +1,4 @@
            - Disable Activity History - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Activity History

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            This erases recent docs, clipboard, and run history.

            Preview Code
            {
            + Disable Activity History - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Activity History

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            This erases recent docs, clipboard, and run history.

            Preview Code
            {
               "Content": "Disable Activity History",
               "Description": "This erases recent docs, clipboard, and run history.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html b/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html
            index a8a2efaa8..4d55a43c5 100644
            --- a/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html
            +++ b/dev/tweaks/Essential-Tweaks/ConsumerFeatures/index.html
            @@ -1,4 +1,4 @@
            - Disable ConsumerFeatures - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable ConsumerFeatures

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

            Preview Code
            {
            + Disable ConsumerFeatures - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable ConsumerFeatures

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

            Preview Code
            {
               "Content": "Disable ConsumerFeatures",
               "Description": "Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/DVR/index.html b/dev/tweaks/Essential-Tweaks/DVR/index.html
            index c503a0f09..bdfc86236 100644
            --- a/dev/tweaks/Essential-Tweaks/DVR/index.html
            +++ b/dev/tweaks/Essential-Tweaks/DVR/index.html
            @@ -1,4 +1,4 @@
            - Disable GameDVR - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable GameDVR

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

            Preview Code
            {
            + Disable GameDVR - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable GameDVR

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

            Preview Code
            {
               "Content": "Disable GameDVR",
               "Description": "GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html b/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html
            index b88ab0cb8..c495e395c 100644
            --- a/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html
            +++ b/dev/tweaks/Essential-Tweaks/DeleteTempFiles/index.html
            @@ -1,4 +1,4 @@
            - Delete Temporary Files - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Delete Temporary Files

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Erases TEMP Folders

            Preview Code
            {
            + Delete Temporary Files - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Delete Temporary Files

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Erases TEMP Folders

            Preview Code
            {
               "Content": "Delete Temporary Files",
               "Description": "Erases TEMP Folders",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html b/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html
            index 9ff38ce74..7a5c2a1ce 100644
            --- a/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html
            +++ b/dev/tweaks/Essential-Tweaks/DiskCleanup/index.html
            @@ -1,4 +1,4 @@
            - Run Disk Cleanup - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Run Disk Cleanup

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Runs Disk Cleanup on Drive C: and removes old Windows Updates.

            Preview Code
            {
            + Run Disk Cleanup - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Run Disk Cleanup

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Runs Disk Cleanup on Drive C: and removes old Windows Updates.

            Preview Code
            {
               "Content": "Run Disk Cleanup",
               "Description": "Runs Disk Cleanup on Drive C: and removes old Windows Updates.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html b/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html
            index e815fcc5b..4ad22be68 100644
            --- a/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html
            +++ b/dev/tweaks/Essential-Tweaks/EdgeDebloat/index.html
            @@ -1,4 +1,4 @@
            - Debloat Edge - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Debloat Edge

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables various telemetry options, popups, and other annoyances in Edge.

            Preview Code
            {
            + Debloat Edge - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Debloat Edge

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables various telemetry options, popups, and other annoyances in Edge.

            Preview Code
            {
               "Content": "Debloat Edge",
               "Description": "Disables various telemetry options, popups, and other annoyances in Edge.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html b/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html
            index bf9cb271b..7b73d21a5 100644
            --- a/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html
            +++ b/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/index.html
            @@ -1,4 +1,4 @@
            - Enable End Task With Right Click - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Enable End Task With Right Click

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enables option to end task when right clicking a program in the taskbar

            Preview Code
            {
            + Enable End Task With Right Click - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Enable End Task With Right Click

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Enables option to end task when right clicking a program in the taskbar

            Preview Code
            {
               "Content": "Enable End Task With Right Click",
               "Description": "Enables option to end task when right clicking a program in the taskbar",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/Hiber/index.html b/dev/tweaks/Essential-Tweaks/Hiber/index.html
            index a963696e0..fff1abc82 100644
            --- a/dev/tweaks/Essential-Tweaks/Hiber/index.html
            +++ b/dev/tweaks/Essential-Tweaks/Hiber/index.html
            @@ -1,4 +1,4 @@
            - Disable Hibernation - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Hibernation

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

            Preview Code
            {
            + Disable Hibernation - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Hibernation

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

            Preview Code
            {
               "Content": "Disable Hibernation",
               "Description": "Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/Home/index.html b/dev/tweaks/Essential-Tweaks/Home/index.html
            index ef78a2408..8e90454af 100644
            --- a/dev/tweaks/Essential-Tweaks/Home/index.html
            +++ b/dev/tweaks/Essential-Tweaks/Home/index.html
            @@ -1,4 +1,4 @@
            - Disable Homegroup - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Homegroup

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

            Preview Code
            {
            + Disable Homegroup - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Homegroup

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

            Preview Code
            {
               "Content": "Disable Homegroup",
               "Description": "Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/IPv46/index.html b/dev/tweaks/Essential-Tweaks/IPv46/index.html
            index 718209464..5990fb1b2 100644
            --- a/dev/tweaks/Essential-Tweaks/IPv46/index.html
            +++ b/dev/tweaks/Essential-Tweaks/IPv46/index.html
            @@ -1,4 +1,4 @@
            - Prefer IPv4 over IPv6 - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Prefer IPv4 over IPv6

            Last Updated: 2024-08-27

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.

            Preview Code
            {
            + Prefer IPv4 over IPv6 - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Prefer IPv4 over IPv6

            Last Updated: 2024-08-27

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.

            Preview Code
            {
               "Content": "Prefer IPv4 over IPv6",
               "Description": "To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html b/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html
            index ab50426f7..585886ebb 100644
            --- a/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html
            +++ b/dev/tweaks/Essential-Tweaks/LaptopHibernation/index.html
            @@ -1,4 +1,4 @@
            - Set Hibernation as default (good for laptops) - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Hibernation as default (good for laptops)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

            Preview Code
            {
            + Set Hibernation as default (good for laptops) - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Hibernation as default (good for laptops)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

            Preview Code
            {
               "Content": "Set Hibernation as default (good for laptops)",
               "Description": "Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/Loc/index.html b/dev/tweaks/Essential-Tweaks/Loc/index.html
            index 604f4008c..e3c912b4c 100644
            --- a/dev/tweaks/Essential-Tweaks/Loc/index.html
            +++ b/dev/tweaks/Essential-Tweaks/Loc/index.html
            @@ -1,4 +1,4 @@
            - Disable Location Tracking - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Location Tracking

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables Location Tracking...DUH!

            Preview Code
            {
            + Disable Location Tracking - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Location Tracking

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables Location Tracking...DUH!

            Preview Code
            {
               "Content": "Disable Location Tracking",
               "Description": "Disables Location Tracking...DUH!",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/Powershell7/index.html b/dev/tweaks/Essential-Tweaks/Powershell7/index.html
            index 1ffd8f685..5aa2d99d4 100644
            --- a/dev/tweaks/Essential-Tweaks/Powershell7/index.html
            +++ b/dev/tweaks/Essential-Tweaks/Powershell7/index.html
            @@ -1,4 +1,4 @@
            - Change Windows Terminal default: PowerShell 5 -> PowerShell 7 - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Change Windows Terminal default: PowerShell 5 -> PowerShell 7

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

            Preview Code
            {
            + Change Windows Terminal default: PowerShell 5 -> PowerShell 7 - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Change Windows Terminal default: PowerShell 5 -> PowerShell 7

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

            Preview Code
            {
               "Content": "Change Windows Terminal default: PowerShell 5 -> PowerShell 7",
               "Description": "This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html b/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html
            index 3c79baa25..851ef20da 100644
            --- a/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html
            +++ b/dev/tweaks/Essential-Tweaks/Powershell7Tele/index.html
            @@ -1,4 +1,4 @@
            - Disable Powershell 7 Telemetry - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Powershell 7 Telemetry

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

            Preview Code
            {
            + Disable Powershell 7 Telemetry - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Powershell 7 Telemetry

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

            Preview Code
            {
               "Content": "Disable Powershell 7 Telemetry",
               "Description": "This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/RestorePoint/index.html b/dev/tweaks/Essential-Tweaks/RestorePoint/index.html
            index 5f8e9bf08..4b62698b1 100644
            --- a/dev/tweaks/Essential-Tweaks/RestorePoint/index.html
            +++ b/dev/tweaks/Essential-Tweaks/RestorePoint/index.html
            @@ -1,4 +1,4 @@
            - Create Restore Point - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Create Restore Point

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Creates a restore point at runtime in case a revert is needed from WinUtil modifications

            Preview Code
            {
            + Create Restore Point - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Create Restore Point

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Creates a restore point at runtime in case a revert is needed from WinUtil modifications

            Preview Code
            {
               "Content": "Create Restore Point",
               "Description": "Creates a restore point at runtime in case a revert is needed from WinUtil modifications",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/Services/index.html b/dev/tweaks/Essential-Tweaks/Services/index.html
            index b948aa0fc..0eef2a79b 100644
            --- a/dev/tweaks/Essential-Tweaks/Services/index.html
            +++ b/dev/tweaks/Essential-Tweaks/Services/index.html
            @@ -1,4 +1,4 @@
            - Set Services to Manual - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Services to Manual

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

            Preview Code
            {
            + Set Services to Manual - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Services to Manual

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

            Preview Code
            {
               "Content": "Set Services to Manual",
               "Description": "Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/Storage/index.html b/dev/tweaks/Essential-Tweaks/Storage/index.html
            index 513b41e18..a24901928 100644
            --- a/dev/tweaks/Essential-Tweaks/Storage/index.html
            +++ b/dev/tweaks/Essential-Tweaks/Storage/index.html
            @@ -1,4 +1,4 @@
            - Disable Storage Sense - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Storage Sense

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Storage Sense deletes temp files automatically.

            Preview Code
            {
            + Disable Storage Sense - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Storage Sense

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Storage Sense deletes temp files automatically.

            Preview Code
            {
               "Content": "Disable Storage Sense",
               "Description": "Storage Sense deletes temp files automatically.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/Tele/index.html b/dev/tweaks/Essential-Tweaks/Tele/index.html
            index 83c7180e4..904811d35 100644
            --- a/dev/tweaks/Essential-Tweaks/Tele/index.html
            +++ b/dev/tweaks/Essential-Tweaks/Tele/index.html
            @@ -1,4 +1,4 @@
            - Disable Telemetry - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Telemetry

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

            Preview Code
            {
            + Disable Telemetry - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Telemetry

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

            Preview Code
            {
               "Content": "Disable Telemetry",
               "Description": "Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Essential-Tweaks/Wifi/index.html b/dev/tweaks/Essential-Tweaks/Wifi/index.html
            index 9fc98c3e7..d67e57752 100644
            --- a/dev/tweaks/Essential-Tweaks/Wifi/index.html
            +++ b/dev/tweaks/Essential-Tweaks/Wifi/index.html
            @@ -1,4 +1,4 @@
            - Disable Wifi-Sense - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Wifi-Sense

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

            Preview Code
            {
            + Disable Wifi-Sense - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Wifi-Sense

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

            Preview Code
            {
               "Content": "Disable Wifi-Sense",
               "Description": "Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.",
               "category": "Essential Tweaks",
            diff --git a/dev/tweaks/Performance-Plans/AddUltPerf/index.html b/dev/tweaks/Performance-Plans/AddUltPerf/index.html
            index 3f0983cae..1b1cf14fe 100644
            --- a/dev/tweaks/Performance-Plans/AddUltPerf/index.html
            +++ b/dev/tweaks/Performance-Plans/AddUltPerf/index.html
            @@ -1,4 +1,4 @@
            - Add and Activate Ultimate Performance Profile - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Add and Activate Ultimate Performance Profile

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Add and Activate Ultimate Performance Profile - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Add and Activate Ultimate Performance Profile

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Add and Activate Ultimate Performance Profile",
               "category": "Performance Plans",
               "panel": "2",
            diff --git a/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html b/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html
            index 87d789188..977b5e800 100644
            --- a/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html
            +++ b/dev/tweaks/Performance-Plans/RemoveUltPerf/index.html
            @@ -1,4 +1,4 @@
            - Remove Ultimate Performance Profile - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove Ultimate Performance Profile

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Remove Ultimate Performance Profile - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove Ultimate Performance Profile

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Remove Ultimate Performance Profile",
               "category": "Performance Plans",
               "panel": "2",
            diff --git a/dev/tweaks/Shortcuts/Shortcut/index.html b/dev/tweaks/Shortcuts/Shortcut/index.html
            index a386e45ec..4d543a653 100644
            --- a/dev/tweaks/Shortcuts/Shortcut/index.html
            +++ b/dev/tweaks/Shortcuts/Shortcut/index.html
            @@ -1,4 +1,4 @@
            - Create WinUtil Shortcut - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Create WinUtil Shortcut

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Create WinUtil Shortcut - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Create WinUtil Shortcut

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Create WinUtil Shortcut",
               "category": "Shortcuts",
               "panel": "2",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html
            index 3b042299d..1ece02db4 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/index.html
            @@ -1,4 +1,4 @@
            - Adobe Network Block - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Adobe Network Block

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

            Preview Code
            {
            + Adobe Network Block - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Adobe Network Block

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

            Preview Code
            {
               "Content": "Adobe Network Block",
               "Description": "Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html
            index b41b5ee3f..4e99f2257 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/index.html
            @@ -1,4 +1,4 @@
            - Remove ALL MS Store Apps - NOT RECOMMENDED - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove ALL MS Store Apps - NOT RECOMMENDED

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

            Preview Code
            {
            + Remove ALL MS Store Apps - NOT RECOMMENDED - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove ALL MS Store Apps - NOT RECOMMENDED

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

            Preview Code
            {
               "Content": "Remove ALL MS Store Apps - NOT RECOMMENDED",
               "Description": "USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html
            index bfed761e8..519e83f7e 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/index.html
            @@ -1,4 +1,4 @@
            - Adobe Debloat - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Adobe Debloat

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

            Preview Code
            {
            + Adobe Debloat - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Adobe Debloat

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

            Preview Code
            {
               "Content": "Adobe Debloat",
               "Description": "Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html
            index 9bfd7d59c..1a3698351 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/index.html
            @@ -1,4 +1,4 @@
            - Disable Background Apps - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Background Apps

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

            Preview Code
            {
            + Disable Background Apps - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Background Apps

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

            Preview Code
            {
               "Content": "Disable Background Apps",
               "Description": "Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html
            index c82bd8571..a1613b72f 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/index.html
            @@ -1,4 +1,4 @@
            - Disable Fullscreen Optimizations - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Fullscreen Optimizations

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

            Preview Code
            {
            + Disable Fullscreen Optimizations - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Fullscreen Optimizations

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

            Preview Code
            {
               "Content": "Disable Fullscreen Optimizations",
               "Description": "Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html
            index f15afedfb..12f227c7a 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/index.html
            @@ -1,4 +1,4 @@
            - Disable Intel MM (vPro LMS) - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Intel MM (vPro LMS)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

            Preview Code
            {
            + Disable Intel MM (vPro LMS) - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Intel MM (vPro LMS)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

            Preview Code
            {
               "Content": "Disable Intel MM (vPro LMS)",
               "Description": "Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html
            index 079965484..a7808f874 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/index.html
            @@ -1,4 +1,4 @@
            - Disable Notification Tray/Calendar - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Notification Tray/Calendar

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables all Notifications INCLUDING Calendar

            Preview Code
            {
            + Disable Notification Tray/Calendar - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Notification Tray/Calendar

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables all Notifications INCLUDING Calendar

            Preview Code
            {
               "Content": "Disable Notification Tray/Calendar",
               "Description": "Disables all Notifications INCLUDING Calendar",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html
            index 2f0696e38..a3660d67a 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/index.html
            @@ -1,4 +1,4 @@
            - Disable IPv6 - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable IPv6

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables IPv6.

            Preview Code
            {
            + Disable IPv6 - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable IPv6

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables IPv6.

            Preview Code
            {
               "Content": "Disable IPv6",
               "Description": "Disables IPv6.",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html
            index 742579342..e77542753 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/index.html
            @@ -1,4 +1,4 @@
            - Set Display for Performance - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Display for Performance

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

            Preview Code
            {
            + Set Display for Performance - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Display for Performance

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

            Preview Code
            {
               "Content": "Set Display for Performance",
               "Description": "Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html
            index 30febbc9e..717272a6f 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/index.html
            @@ -1,4 +1,4 @@
            - Run OO Shutup 10 - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Run OO Shutup 10

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Run OO Shutup 10 - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Run OO Shutup 10

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Run OO Shutup 10",
               "category": "z__Advanced Tweaks - CAUTION",
               "panel": "1",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html
            index 75ca8b24a..0022d2ed3 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/index.html
            @@ -1,4 +1,4 @@
            - Disable Microsoft Copilot - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Microsoft Copilot

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables MS Copilot AI built into Windows since 23H2.

            Preview Code
            {
            + Disable Microsoft Copilot - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Microsoft Copilot

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Disables MS Copilot AI built into Windows since 23H2.

            Preview Code
            {
               "Content": "Disable Microsoft Copilot",
               "Description": "Disables MS Copilot AI built into Windows since 23H2.",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html
            index 93be5e8bf..180f625d1 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/index.html
            @@ -1,4 +1,4 @@
            - Remove Microsoft Edge - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove Microsoft Edge

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

            Preview Code
            {
            + Remove Microsoft Edge - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove Microsoft Edge

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

            Preview Code
            {
               "Content": "Remove Microsoft Edge",
               "Description": "Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html
            index 9fa9bd5a3..c340ecda9 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/index.html
            @@ -1,4 +1,4 @@
            - Remove Home and Gallery from explorer - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove Home and Gallery from explorer

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Removes the Home and Gallery from explorer and sets This PC as default

            Preview Code
            {
            + Remove Home and Gallery from explorer - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove Home and Gallery from explorer

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Removes the Home and Gallery from explorer and sets This PC as default

            Preview Code
            {
               "Content": "Remove Home and Gallery from explorer",
               "Description": "Removes the Home and Gallery from explorer and sets This PC as default",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html
            index 88f6bb440..879461c7b 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/index.html
            @@ -1,4 +1,4 @@
            - Remove OneDrive - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove OneDrive

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Moves OneDrive files to Default Home Folders and Uninstalls it.

            Preview Code
            {
            + Remove OneDrive - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Remove OneDrive

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Moves OneDrive files to Default Home Folders and Uninstalls it.

            Preview Code
            {
               "Content": "Remove OneDrive",
               "Description": "Moves OneDrive files to Default Home Folders and Uninstalls it.",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html
            index a35e15212..fd295e96e 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/index.html
            @@ -1,4 +1,4 @@
            - Set Classic Right-Click Menu - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Classic Right-Click Menu

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

            Preview Code
            {
            + Set Classic Right-Click Menu - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Classic Right-Click Menu

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

            Preview Code
            {
               "Content": "Set Classic Right-Click Menu ",
               "Description": "Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html
            index 0ec626b8b..457aba31d 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/index.html
            @@ -1,4 +1,4 @@
            - Disable Teredo - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Teredo

            Last Updated: 2024-08-27

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games

            Preview Code
            {
            + Disable Teredo - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Disable Teredo

            Last Updated: 2024-08-27

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games

            Preview Code
            {
               "Content": "Disable Teredo",
               "Description": "Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html
            index bf78ef95d..b8ed83c15 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/index.html
            @@ -1,4 +1,4 @@
            - Set Time to UTC (Dual Boot) - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Time to UTC (Dual Boot)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

            Preview Code
            {
            + Set Time to UTC (Dual Boot) - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Set Time to UTC (Dual Boot)

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Description

            Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

            Preview Code
            {
               "Content": "Set Time to UTC (Dual Boot)",
               "Description": "Essential for computers that are dual booting. Fixes the time sync with Linux Systems.",
               "category": "z__Advanced Tweaks - CAUTION",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html
            index 444bee38d..4f4a86231 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/index.html
            @@ -1,4 +1,4 @@
            - Undo Selected Tweaks - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Undo Selected Tweaks

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Undo Selected Tweaks - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Undo Selected Tweaks

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Undo Selected Tweaks",
               "category": "z__Advanced Tweaks - CAUTION",
               "panel": "1",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html
            index b575daace..2df4cab7c 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/button/index.html
            @@ -1,4 +1,4 @@
            - Run Tweaks - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Run Tweaks

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + Run Tweaks - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Run Tweaks

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "Run Tweaks",
               "category": "z__Advanced Tweaks - CAUTION",
               "panel": "1",
            diff --git a/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html b/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html
            index 5fff92b95..06c00358a 100644
            --- a/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html
            +++ b/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/index.html
            @@ -1,4 +1,4 @@
            - DNS - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            DNS

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
            + DNS - WinUtil Documentation      
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            DNS

            Last Updated: 2024-08-07

            Info

            The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

            Preview Code
            {
               "Content": "DNS",
               "category": "z__Advanced Tweaks - CAUTION",
               "panel": "1",
            diff --git a/devdocs/index.html b/devdocs/index.html
            index c74d69079..e6f457c12 100644
            --- a/devdocs/index.html
            +++ b/devdocs/index.html
            @@ -1 +1 @@
            - Dev Docs - WinUtil Documentation      
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Table of Contents

            Tweaks

            z--Advanced-Tweaks---CAUTION

            Essential-Tweaks

            Shortcuts

            Customize-Preferences

            Performance-Plans

            Features

            Legacy-Windows-Panels

            Fixes

            Features

            \ No newline at end of file + Dev Docs - WinUtil Documentation
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Table of Contents

            Tweaks

            z--Advanced-Tweaks---CAUTION

            Essential-Tweaks

            Shortcuts

            Customize-Preferences

            Performance-Plans

            Features

            Legacy-Windows-Panels

            Fixes

            Features

            \ No newline at end of file diff --git a/faq/index.html b/faq/index.html index b92d5ba31..10b7a8350 100644 --- a/faq/index.html +++ b/faq/index.html @@ -1 +1 @@ - FAQ - WinUtil Documentation
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            FAQ's

            How do I uninstall WinUtil?

            • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.

            I applied a tweak and now something doesn't work, what do I do?

            • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking "Undo Selected Tweaks".
            \ No newline at end of file + FAQ - WinUtil Documentation
            Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            FAQ's

            How do I uninstall WinUtil?

            • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.

            I applied a tweak and now something doesn't work, what do I do?

            • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking "Undo Selected Tweaks".
            \ No newline at end of file diff --git a/index.html b/index.html index 787d793b0..2b7342dc1 100644 --- a/index.html +++ b/index.html @@ -1,2 +1,2 @@ - WinUtil Documentation
            Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

            Welcome to the WinUtil Documentation!

            Version GitHub Downloads (specific asset, all releases) Discord Community Server

            Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you’re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

            Running the latest release of WinUtil

            • You will first need to start a Powershell terminal as Admin.
            • Now you can run the following command:
              irm christitus.com/win | iex
              + WinUtil Documentation      
              Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

              Welcome to the WinUtil Documentation!

              Version GitHub Downloads (specific asset, all releases) Discord Community Server

              Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you’re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

              Running the latest release of WinUtil

              • You will first need to start a Powershell terminal as Admin.
              • Now you can run the following command:
                irm christitus.com/win | iex
                 

              Info

              WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

              \ No newline at end of file diff --git a/userguide/index.html b/userguide/index.html index ae60ba507..894840b6d 100644 --- a/userguide/index.html +++ b/userguide/index.html @@ -1,2 +1,2 @@ - User Guide - WinUtil Documentation
              Announcement: We are currently not adding any applicatiosn to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

              Walkthrough

              Install


              • Choose the programs you want to install or upgrade.
                • For programs not currently installed, this action will install them.
                • For programs already installed, this action will update them to the latest version.
              • Click the Install/Upgrade Selected button to start the installation or upgrade process.
              • Simply press the Upgrade All button.
              • This will upgrade all applicable programs that are installed without the need for individual selection.
              • Select the programs you wish to uninstall.
              • Click the Uninstall Selected button to remove the selected programs.
              • Click the Get Installed button.
              • This will scan for and select all installed programs in WinUtil that WinGet supports.
              • Click the Clear Selection button.
              • This will unselect all checked programs.

              Install Image Install Image

              Tip

              If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

              Tweaks


              Tweaks Image Tweaks Image

              Run Tweaks

              • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
              • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
              • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.

              Undo Tweaks

              • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
              • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
              • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.

              Essential Tweaks

              Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

              Advanced Tweaks - CAUTION

              Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

              O&O Shutup

              O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

              DNS

              The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

              • Default: Uses the default DNS settings configured by your ISP or network.
              • DHCP: Automatically acquires DNS settings from the DHCP server.
              • Google: A reliable and fast DNS service provided by Google.
              • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
              • Cloudflare_Malware: Provides additional protection by blocking malware sites.
              • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
              • Level3: Another fast and reliable DNS service option.
              • Open_DNS: Offers customizable filtering and enhanced security features.
              • Quad9: Focuses on security by blocking known malicious domains.

              Customize Preferences

              The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user’s specific needs and preferences.

              Performance Plans

              The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

              Add and activate the Ultimate Performance Profile:

              • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.

              Remove Ultimate Performance Profile:

              • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.

              Shortcuts

              The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

              Config


              Features

              • Install the most used Windows Features by checking the checkbox and clicking "Install Features" to install them.

              • All .Net Frameworks (2, 3, 4)

              • HyperV Virtualization
              • Legacy Media (WMP, DirectPlay)
              • NFS - Network File System
              • Enable Search Box Web Suggestions in Registry (explorer restart)
              • Disables Search Box Web Suggestions in Registry (explorer restart)
              • Enable Daily Registry Backup Task 12:30am
              • Enable Legacy F8 Boot Recovery
              • Disable Legacy F8 Boot Recovery
              • Windows Subsystem for Linux
              • Windows Sandbox

              Fixes

              • Quick fixes for your system if you are having issues.

              • Set Up Autologin

              • Reset Windows Update
              • Reset Network
              • System Corruption Scan
              • WinGet Reinstall
              • Remove Adobe Creative Cloud

              Legacy Windows Panels

              Open old-school Windows panels directly from WinUtil. Following Panels are available:

              • Control Panel
              • Network Connections
              • Power Panel
              • Region
              • Sound Settings
              • System Properties
              • User Accounts

              Updates


              The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

              Default (Out of Box) Settings

              • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
              • Functionality: It will remove any custom Windows update settings previously applied.
              • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
              • Description: This is the recommended setting for all computers.
              • Update Schedule:
                • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
                • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
              • Rationale:
                • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
                • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
              • Description: This setting completely disables all Windows updates.
              • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
              • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
              • Note: It is strongly advised against using this setting due to the heightened security risks.

              Bug

              The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

              MicroWin


              • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.

              Microwin Microwin

              Basic usage

              1. Specify the source Windows ISO to customize.

                • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
              2. Configure the debloat process.

              3. Specify the target location for the new ISO file.
              4. Let the magic happen!

              Heads-up

              This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

              Options

              • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

              Info

              OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

              • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
              • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

              By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

              Driver integration options
              • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
              • Import drivers from the current system will add every third-party driver that is present in your active installation.

              This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

              Custom user settings

              With MicroWin, you can also configure your user before proceeding if you don't want to use the default User account. To do this, simply type the account name (20 characters maximum), and a password. Then, let MicroWin do the rest.

              Info

              Please make sure that you remember your password. MicroWin will configure auto-login settings, so you won't have to enter your password. However, if you are required to enter your password, it's best that you don't forget it.

              Ventoy options
              • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

              Info

              Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

              Automation

              • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

              • On the Install Tab, click "Get Installed", this will get all installed apps supported by Winutil on the system. GetInstalled GetInstalled

              • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file. SettingsExport SettingsExport

              • Copy this file to a USB or somewhere you can use it after Windows installation.

              Tip

              Use the Microwin tab to create a custom Windows image & install the Windows image.

              • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
                iex "& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run"
                + User Guide - WinUtil Documentation      
                Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

                Walkthrough

                Install


                • Choose the programs you want to install or upgrade.
                  • For programs not currently installed, this action will install them.
                  • For programs already installed, this action will update them to the latest version.
                • Click the Install/Upgrade Selected button to start the installation or upgrade process.
                • Simply press the Upgrade All button.
                • This will upgrade all applicable programs that are installed without the need for individual selection.
                • Select the programs you wish to uninstall.
                • Click the Uninstall Selected button to remove the selected programs.
                • Click the Get Installed button.
                • This will scan for and select all installed programs in WinUtil that WinGet supports.
                • Click the Clear Selection button.
                • This will unselect all checked programs.

                Install Image Install Image

                Tip

                If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

                Tweaks


                Tweaks Image Tweaks Image

                Run Tweaks

                • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
                • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
                • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.

                Undo Tweaks

                • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
                • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
                • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.

                Essential Tweaks

                Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

                Advanced Tweaks - CAUTION

                Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

                O&O Shutup

                O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

                DNS

                The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

                • Default: Uses the default DNS settings configured by your ISP or network.
                • DHCP: Automatically acquires DNS settings from the DHCP server.
                • Google: A reliable and fast DNS service provided by Google.
                • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
                • Cloudflare_Malware: Provides additional protection by blocking malware sites.
                • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
                • Level3: Another fast and reliable DNS service option.
                • Open_DNS: Offers customizable filtering and enhanced security features.
                • Quad9: Focuses on security by blocking known malicious domains.

                Customize Preferences

                The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user’s specific needs and preferences.

                Performance Plans

                The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

                Add and activate the Ultimate Performance Profile:

                • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.

                Remove Ultimate Performance Profile:

                • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.

                Shortcuts

                The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

                Config


                Features

                • Install the most used Windows Features by checking the checkbox and clicking "Install Features" to install them.

                • All .Net Frameworks (2, 3, 4)

                • HyperV Virtualization
                • Legacy Media (WMP, DirectPlay)
                • NFS - Network File System
                • Enable Search Box Web Suggestions in Registry (explorer restart)
                • Disables Search Box Web Suggestions in Registry (explorer restart)
                • Enable Daily Registry Backup Task 12:30am
                • Enable Legacy F8 Boot Recovery
                • Disable Legacy F8 Boot Recovery
                • Windows Subsystem for Linux
                • Windows Sandbox

                Fixes

                • Quick fixes for your system if you are having issues.

                • Set Up Autologin

                • Reset Windows Update
                • Reset Network
                • System Corruption Scan
                • WinGet Reinstall
                • Remove Adobe Creative Cloud

                Legacy Windows Panels

                Open old-school Windows panels directly from WinUtil. Following Panels are available:

                • Control Panel
                • Network Connections
                • Power Panel
                • Region
                • Sound Settings
                • System Properties
                • User Accounts

                Updates


                The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

                Default (Out of Box) Settings

                • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
                • Functionality: It will remove any custom Windows update settings previously applied.
                • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
                • Description: This is the recommended setting for all computers.
                • Update Schedule:
                  • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
                  • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
                • Rationale:
                  • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
                  • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
                • Description: This setting completely disables all Windows updates.
                • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
                • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
                • Note: It is strongly advised against using this setting due to the heightened security risks.

                Bug

                The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

                MicroWin


                • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.

                Microwin Microwin

                Basic usage

                1. Specify the source Windows ISO to customize.

                  • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
                2. Configure the debloat process.

                3. Specify the target location for the new ISO file.
                4. Let the magic happen!

                Heads-up

                This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

                Options

                • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

                Info

                OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

                • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
                • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

                By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

                Driver integration options
                • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
                • Import drivers from the current system will add every third-party driver that is present in your active installation.

                This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

                Custom user settings

                With MicroWin, you can also configure your user before proceeding if you don't want to use the default User account. To do this, simply type the account name (20 characters maximum), and a password. Then, let MicroWin do the rest.

                Info

                Please make sure that you remember your password. MicroWin will configure auto-login settings, so you won't have to enter your password. However, if you are required to enter your password, it's best that you don't forget it.

                Ventoy options
                • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

                Info

                Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

                Automation

                • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

                • On the Install Tab, click "Get Installed", this will get all installed apps supported by Winutil on the system. GetInstalled GetInstalled

                • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file. SettingsExport SettingsExport

                • Copy this file to a USB or somewhere you can use it after Windows installation.

                Tip

                Use the Microwin tab to create a custom Windows image & install the Windows image.

                • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
                  iex "& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run"
                   
                • Have a cup of coffee! Come back when it's done.
                \ No newline at end of file From dff0279cbf23a006a4635b421d68069e88135863 Mon Sep 17 00:00:00 2001 From: <> Date: Tue, 10 Sep 2024 01:15:02 +0000 Subject: [PATCH 10/10] Deployed ad37371 with MkDocs version: 1.6.0 --- .../Legacy-Windows-Panels/printer/index.html | 31 ++++++++++++++++++ devdocs/index.html | 2 +- search/search_index.json | 2 +- sitemap.xml.gz | Bin 127 -> 127 bytes 4 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 dev/features/Legacy-Windows-Panels/printer/index.html diff --git a/dev/features/Legacy-Windows-Panels/printer/index.html b/dev/features/Legacy-Windows-Panels/printer/index.html new file mode 100644 index 000000000..1150acb06 --- /dev/null +++ b/dev/features/Legacy-Windows-Panels/printer/index.html @@ -0,0 +1,31 @@ + Printer Settings - WinUtil Documentation
                Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

                Printer Settings

                Last Updated: 2024-08-31

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {
                +  "Content": "Printer Settings",
                +  "category": "Legacy Windows Panels",
                +  "panel": "2",
                +  "Type": "Button",
                +  "ButtonWidth": "300"
                +}
                +

                Function: Invoke-WPFControlPanel

                function Invoke-WPFControlPanel {
                +    <#
                +
                +    .SYNOPSIS
                +        Opens the requested legacy panel
                +
                +    .PARAMETER Panel
                +        The panel to open
                +
                +    #>
                +    param($Panel)
                +
                +    switch ($Panel) {
                +        "WPFPanelcontrol" {cmd /c control}
                +        "WPFPanelnetwork" {cmd /c ncpa.cpl}
                +        "WPFPanelpower"   {cmd /c powercfg.cpl}
                +        "WPFPanelregion"  {cmd /c intl.cpl}
                +        "WPFPanelsound"   {cmd /c mmsys.cpl}
                +        "WPFPanelprinter" {Start-Process "shell:::{A8A91A66-3A7D-4424-8D24-04E180695C7A}"}
                +        "WPFPanelsystem"  {cmd /c sysdm.cpl}
                +        "WPFPaneluser"    {cmd /c "control userpasswords2"}
                +    }
                +}
                +

                View the JSON file

                \ No newline at end of file diff --git a/devdocs/index.html b/devdocs/index.html index e6f457c12..42740d9d8 100644 --- a/devdocs/index.html +++ b/devdocs/index.html @@ -1 +1 @@ - Dev Docs - WinUtil Documentation
                Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

                Table of Contents

                Tweaks

                z--Advanced-Tweaks---CAUTION

                Essential-Tweaks

                Shortcuts

                Customize-Preferences

                Performance-Plans

                Features

                Legacy-Windows-Panels

                Fixes

                Features

                \ No newline at end of file + Dev Docs - WinUtil Documentation
                Announcement: We are currently not adding any applications to WinUtil and any apps that will be added through a PR will be declined by the maintainer.

                Table of Contents

                Tweaks

                Essential-Tweaks

                Shortcuts

                z--Advanced-Tweaks---CAUTION

                Customize-Preferences

                Performance-Plans

                Features

                Fixes

                Legacy-Windows-Panels

                Features

                \ No newline at end of file diff --git a/search/search_index.json b/search/search_index.json index ec154b3c5..930a606a9 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

                Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

                "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
                • You will first need to start a Powershell terminal as Admin.
                • Now you can run the following command:
                  irm christitus.com/win | iex\n

                Info

                WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

                "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
                • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
                • If possible: Allow script in Anti-Virus software settings.

                • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

                [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
                • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
                • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

                If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

                Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
                • Script doesn't run/PowerShell crashes:
                • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
                • Run:
                  Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
                • Run:
                  irm christitus.com/win | iex\n
                "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
                • Windows taking longer to shut down:
                • #69 Turn on fast startup: Press Windows key + R, then type:
                  control /name Microsoft.PowerOptions /page pageGlobalSettings\n
                • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
                  powercfg /H off\n
                • #69 95 #232 Windows Search does not work: Enable Background Apps
                • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

                  Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

                • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

                • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

                • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

                "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
                • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

                • Check Battery Health:

                • Open a Command Prompt as an administrator.
                • Run the following command to generate a battery report:
                  powercfg /batteryreport /output \"C:\\battery_report.html\"\n
                • Open the generated HTML report to review information about battery health and usage.

                • Review Power Settings:

                • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
                • Adjust power plan settings based on your preferences and usage patterns.
                • Click on \"Additional power settings\" to access advanced power settings.

                • Identify Power-Hungry Apps:

                • Right-click on the taskbar and select \"Task Manager.\"
                • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
                • Consider closing unnecessary background applications.

                • Update Drivers:

                • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
                • Ensure graphics, chipset, and other essential drivers are up to date.

                • Check for Windows Updates:

                • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
                • Check for and install any available updates for your operating system.

                • Reduce Screen Brightness:

                • Adjust screen brightness based on your preferences and lighting conditions.
                • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

                • Battery Saver Mode:

                • Go to \"Settings\" > \"System\" > \"Battery.\"
                • Turn on \"Battery saver\" to limit background activity and conserve power.

                • Check Power Usage in Settings:

                • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
                • Review the list of apps and their power usage.

                • Check Background Apps:

                • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
                • Disable unnecessary apps running in the background.

                • Use Powercfg for Analysis:

                  • Open a Command Prompt as an administrator.
                  • Run the following command to analyze energy usage and generate a report:
                    powercfg /energy /output \"C:\\energy_report.html\"\n
                  • Open the generated HTML report to identify energy consumption patterns.
                • Review Event Viewer:

                  • Open Event Viewer by searching for it in the Start menu.
                  • Navigate to \"Windows Logs\" > \"System.\"
                  • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
                • Check Wake-up Sources:

                  • Open a Command Prompt as an administrator.
                  • Use the command powercfg /requests to identify processes preventing sleep.
                  • Check Task Scheduler for tasks waking up the computer.
                  • Use the command powercfg /waketimers to view active wake timers.
                • Resource Monitor:

                  • Open Resource Monitor from the Start menu.
                  • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
                • Windows Settings - Activity History:

                  • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
                  • Turn off \"Let Windows collect my activities from this PC.\"
                • Network Adapters:

                  • Open Device Manager by searching for it in the Start menu.
                  • Locate your network adapter, right-click, and go to \"Properties.\"
                  • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
                • Review Installed Applications:

                  • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
                  • Check settings/preferences of individual applications for power-related options.
                  • Uninstall unnecessary or problematic software.
                • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

                "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
                • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

                • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

                • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

                  sfc /scannow\n

                • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

                • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

                • Press Win + R to open the Run dialog.
                • Type services.msc and press Enter.
                • Locate \"Windows Management Instrumentation\" in the list.
                • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

                • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

                • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

                • Press Win + X and select \"Event Viewer.\"

                • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
                • Look for entries with the source related to WMI or the application use to mount the ISO.

                • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

                • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

                "},{"location":"contribute/","title":"How to Contribute?","text":""},{"location":"contribute/#testing","title":"Testing","text":"
                • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!
                "},{"location":"contribute/#run-the-latest-pre-release","title":"Run the latest pre-release","text":"
                irm christitus.com/windev | iex\n

                Keep in mind

                This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

                "},{"location":"contribute/#issues","title":"Issues","text":"
                • If you encounter any challenges or problems with the script, I kindly request that you submit them via the \"Issues\" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
                "},{"location":"contribute/#contribute-code","title":"Contribute Code","text":"
                • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

                • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

                Important

                Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

                • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

                • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

                Note

                When creating a function, please include \"WPF\" or \"WinUtil\" in the file name so it can be loaded into the runspace.

                "},{"location":"contribute/#walk-through","title":"Walk through","text":"
                • This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
                  • Commit through WEB
                  • Commit through GitHub Desktop
                  • Create a Pull Request
                "},{"location":"contribute/#overview","title":"Overview","text":"
                %%{init: {\"flowchart\": {\"curve\": \"cardinal\"}} }%%\ngraph TD\n\u00a0 A[Fork Project] --> B[Clone Repository];\n\u00a0 B --> C[Create New Branch];\n\u00a0 C --> D[Make Changes];\n\u00a0 D --> G[Test Changes];\n\u00a0 G --> H{Tests Passed?};\n\u00a0 H -->|Yes| E[Commit Changes];\n\u00a0 H -->|No| J[Fix Issues];\n\u00a0 J --> G;\n\u00a0 E --> F[Push Branch];\n\u00a0 F --> K[Create Pull Request];\n\u00a0 K --> L[Fill out PR template];\n  classDef default stroke:#333,stroke-width:4px,font-size:12pt;

                Info

                This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

                "},{"location":"contribute/#fork-the-repo","title":"Fork the Repo","text":"
                • Fork the WinUtil Repository here to create a copy that will be available in your repository list.
                "},{"location":"contribute/#clone-the-fork","title":"Clone the Fork","text":"

                Tip

                While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

                • Install GitHub Desktop if it is not already installed.
                • Log in using the same GitHub account you used to fork WinUtil.
                • Choose the fork under \"Your Repositories\" and press \"clone {repo name}\"
                • Create a new branch and name it something relatable to your changes.

                • Now you can modify WinUtil to your liking using your preferred text editor.

                "},{"location":"contribute/#testing-your-changes","title":"Testing your changes","text":"
                • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

                • Change the directory where you are running the commands to the forked project.

                • cd {path to the folder with the compile.ps1}
                • Run the following command to compile and run WinUtil:
                • .\\Compile.ps1 -run

                • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
                "},{"location":"contribute/#committing-the-changes","title":"Committing the changes","text":"
                • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:
                • Now, commit your changes once you are happy with the result.
                • Push the changes to upload them to your fork on github.com.
                "},{"location":"contribute/#making-a-pr","title":"Making a PR","text":"
                • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the \"/windev\" build.
                • If you do not see your feature in the main \"/win\" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
                • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
                "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
                • Adobe Debloat
                • Adobe Network Block
                • Disable Background Apps
                • Disable Fullscreen Optimizations
                • Disable Intel MM (vPro LMS)
                • Disable IPv6
                • Disable Microsoft Copilot
                • Disable Notification Tray/Calendar
                • Disable Teredo
                • DNS
                • Remove ALL MS Store Apps - NOT RECOMMENDED
                • Remove Home and Gallery from explorer
                • Remove Microsoft Edge
                • Remove OneDrive
                • Run OO Shutup 10
                • Run Tweaks
                • Set Classic Right-Click Menu
                • Set Display for Performance
                • Set Time to UTC (Dual Boot)
                • Undo Selected Tweaks
                "},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
                • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
                • Create Restore Point
                • Debloat Edge
                • Delete Temporary Files
                • Prefer IPv4 over IPv6
                • Disable Activity History
                • Disable ConsumerFeatures
                • Disable GameDVR
                • Disable Hibernation
                • Disable Homegroup
                • Disable Location Tracking
                • Disable Powershell 7 Telemetry
                • Disable Storage Sense
                • Disable Telemetry
                • Disable Wifi-Sense
                • Enable End Task With Right Click
                • Run Disk Cleanup
                • Set Hibernation as default (good for laptops)
                • Set Services to Manual
                "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
                • Create WinUtil Shortcut
                "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
                • Bing Search in Start Menu
                • Center Taskbar Items
                • Dark Theme for Windows
                • Detailed BSoD
                • Mouse Acceleration
                • NumLock on Startup
                • Search Button in Taskbar
                • Show File Extensions
                • Show Hidden Files
                • Snap Assist Flyout
                • Snap Assist Suggestion
                • Snap Window
                • Sticky Keys
                • Task View Button in Taskbar
                • Verbose Messages During Logon
                • Widgets Button in Taskbar
                "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
                • Add and Activate Ultimate Performance Profile
                • Remove Ultimate Performance Profile
                "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
                • Control Panel
                • Network Connections
                • Power Panel
                • Region
                • Sound Settings
                • System Properties
                • User Accounts
                "},{"location":"devdocs/#fixes","title":"Fixes","text":"
                • Remove Adobe Creative Cloud
                • Reset Network
                • Reset Windows Update
                • Set Up Autologin
                • System Corruption Scan
                • WinGet Reinstall
                "},{"location":"devdocs/#features_1","title":"Features","text":"
                • All .Net Framework (2,3,4)
                • Disable Legacy F8 Boot Recovery
                • Disable Search Box Web Suggestions in Registry(explorer restart)
                • Enable Daily Registry Backup Task 12.30am
                • Enable Legacy F8 Boot Recovery
                • Enable Search Box Web Suggestions in Registry(explorer restart)
                • HyperV Virtualization
                • Install Features
                • Legacy Media (WMP, DirectPlay)
                • NFS - Network File System
                • Windows Sandbox
                • Windows Subsystem for Linux
                "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
                • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
                "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
                • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
                "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
                • Choose the programs you want to install or upgrade.
                  • For programs not currently installed, this action will install them.
                  • For programs already installed, this action will update them to the latest version.
                • Click the Install/Upgrade Selected button to start the installation or upgrade process.
                • Simply press the Upgrade All button.
                • This will upgrade all applicable programs that are installed without the need for individual selection.
                • Select the programs you wish to uninstall.
                • Click the Uninstall Selected button to remove the selected programs.
                • Click the Get Installed button.
                • This will scan for and select all installed programs in WinUtil that WinGet supports.
                • Click the Clear Selection button.
                • This will unselect all checked programs.

                Tip

                If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

                "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
                • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
                • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
                • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
                "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
                • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
                • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
                • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
                "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

                Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

                "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

                Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

                "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

                O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

                "},{"location":"userguide/#dns","title":"DNS","text":"

                The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

                • Default: Uses the default DNS settings configured by your ISP or network.
                • DHCP: Automatically acquires DNS settings from the DHCP server.
                • Google: A reliable and fast DNS service provided by Google.
                • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
                • Cloudflare_Malware: Provides additional protection by blocking malware sites.
                • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
                • Level3: Another fast and reliable DNS service option.
                • Open_DNS: Offers customizable filtering and enhanced security features.
                • Quad9: Focuses on security by blocking known malicious domains.
                "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

                The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

                "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

                The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

                "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
                • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
                "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
                • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
                "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

                The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

                "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
                • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

                • All .Net Frameworks (2, 3, 4)

                • HyperV Virtualization
                • Legacy Media (WMP, DirectPlay)
                • NFS - Network File System
                • Enable Search Box Web Suggestions in Registry (explorer restart)
                • Disables Search Box Web Suggestions in Registry (explorer restart)
                • Enable Daily Registry Backup Task 12:30am
                • Enable Legacy F8 Boot Recovery
                • Disable Legacy F8 Boot Recovery
                • Windows Subsystem for Linux
                • Windows Sandbox
                "},{"location":"userguide/#fixes","title":"Fixes","text":"
                • Quick fixes for your system if you are having issues.

                • Set Up Autologin

                • Reset Windows Update
                • Reset Network
                • System Corruption Scan
                • WinGet Reinstall
                • Remove Adobe Creative Cloud
                "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

                Open old-school Windows panels directly from WinUtil. Following Panels are available:

                • Control Panel
                • Network Connections
                • Power Panel
                • Region
                • Sound Settings
                • System Properties
                • User Accounts
                "},{"location":"userguide/#updates","title":"Updates","text":"

                The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

                "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
                • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
                • Functionality: It will remove any custom Windows update settings previously applied.
                • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
                "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
                • Description: This is the recommended setting for all computers.
                • Update Schedule:
                  • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
                  • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
                • Rationale:
                  • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
                  • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
                "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
                • Description: This setting completely disables all Windows updates.
                • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
                • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
                • Note: It is strongly advised against using this setting due to the heightened security risks.

                Bug

                The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

                "},{"location":"userguide/#microwin","title":"MicroWin","text":"
                • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
                "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
                1. Specify the source Windows ISO to customize.

                  • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
                2. Configure the debloat process.

                3. Specify the target location for the new ISO file.
                4. Let the magic happen!

                Heads-up

                This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

                "},{"location":"userguide/#options","title":"Options","text":"
                • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

                Info

                OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

                • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
                • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

                By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

                "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
                • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
                • Import drivers from the current system will add every third-party driver that is present in your active installation.

                This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

                "},{"location":"userguide/#custom-user-settings","title":"Custom user settings","text":"

                With MicroWin, you can also configure your user before proceeding if you don't want to use the default User account. To do this, simply type the account name (20 characters maximum), and a password. Then, let MicroWin do the rest.

                Info

                Please make sure that you remember your password. MicroWin will configure auto-login settings, so you won't have to enter your password. However, if you are required to enter your password, it's best that you don't forget it.

                "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
                • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

                Info

                Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

                "},{"location":"userguide/#automation","title":"Automation","text":"
                • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

                • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

                • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

                • Copy this file to a USB or somewhere you can use it after Windows installation.

                Tip

                Use the Microwin tab to create a custom Windows image & install the Windows image.

                • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
                  iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
                • Have a cup of coffee! Come back when it's done.
                "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

                Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

                Preview Code
                {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
                "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
                      If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

                View the JSON file

                "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

                Disables web suggestions when searching using Windows Search.

                Preview Code
                {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
                "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
                      If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

                View the JSON file

                "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

                Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

                Preview Code
                {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
                "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
                      If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

                View the JSON file

                "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

                Enables web suggestions when searching using Windows Search.

                Preview Code
                {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
                "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
                      If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

                View the JSON file

                "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
                "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
                function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

                Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

                Preview Code
                {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
                "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
                      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

                View the JSON file

                "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

                Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

                Preview Code
                {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

                View the JSON file

                "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

                .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

                Preview Code
                {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
                "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

                Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

                You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

                "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
                • NetFx4-AdvSrvs
                • NetFx3

                View the JSON file

                "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

                Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

                Preview Code
                {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
                "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

                Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

                You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

                "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
                • HypervisorPlatform
                • Microsoft-Hyper-V-All
                • Microsoft-Hyper-V
                • Microsoft-Hyper-V-Tools-All
                • Microsoft-Hyper-V-Management-PowerShell
                • Microsoft-Hyper-V-Hypervisor
                • Microsoft-Hyper-V-Services
                • Microsoft-Hyper-V-Management-Clients
                "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
                Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

                View the JSON file

                "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

                Enables legacy programs from previous versions of windows

                Preview Code
                {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
                "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

                Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

                You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

                "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
                • WindowsMediaPlayer
                • MediaPlayback
                • DirectPlay
                • LegacyComponents

                View the JSON file

                "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

                Network File System (NFS) is a mechanism for storing files on a network.

                Preview Code
                {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
                "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

                Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

                You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

                "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
                • ServicesForNFS-ClientOnly
                • ClientForNFS-Infrastructure
                • NFS-Administration
                "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
                nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

                View the JSON file

                "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

                Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

                Preview Code
                {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
                "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

                Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

                You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

                "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
                • VirtualMachinePlatform
                • Microsoft-Windows-Subsystem-Linux

                View the JSON file

                "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
                "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
                function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

                View the JSON file

                "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
                "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
                function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

                View the JSON file

                "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
                "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
                function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

                View the JSON file

                "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
                "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
                function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
                "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
                function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

                View the JSON file

                "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
                "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
                function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

                If enable then includes web search results from Bing in your Start Menu search.

                Preview Code
                {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
                function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

                Enable/Disable Dark Mode.

                Preview Code
                {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
                Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

                If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

                Preview Code
                {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
                Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

                If Enabled then Hidden Files will be shown.

                Preview Code
                {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
                function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

                If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

                Preview Code
                {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
                Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

                Toggle the Num Lock key state when your computer starts.

                Preview Code
                {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
                function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

                If enabled then File extensions (e.g., .txt, .jpg) are visible.

                Preview Code
                {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
                function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

                If enabled then Snap preview is disabled when maximize button is hovered.

                Preview Code
                {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
                function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

                If enabled then you will get suggestions to snap other applications in the left over spaces.

                Preview Code
                {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
                function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

                If enabled you can align windows by dragging them. | Relogin Required

                Preview Code
                {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
                function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

                If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

                Preview Code
                {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
                Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

                If Enabled then Task View Button in Taskbar will be shown.

                Preview Code
                {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
                function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

                [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

                Preview Code
                {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
                function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

                If Enabled Search Button will be on the taskbar.

                Preview Code
                {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
                function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

                If Enabled then Widgets Button in Taskbar will be shown.

                Preview Code
                {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
                function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

                Show detailed messages during the login process for troubleshooting and diagnostics.

                Preview Code
                {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
                function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

                This erases recent docs, clipboard, and run history.

                Preview Code
                {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

                Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

                Preview Code
                {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

                GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

                Preview Code
                {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

                Type: DWord

                Original Value: 1

                New Value: 2

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

                Erases TEMP Folders

                Preview Code
                {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
                Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

                Runs Disk Cleanup on Drive C: and removes old Windows Updates.

                Preview Code
                {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
                      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

                Disables various telemetry options, popups, and other annoyances in Edge.

                Preview Code
                {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

                Enables option to end task when right clicking a program in the taskbar

                Preview Code
                {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
                $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
                "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
                $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

                Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

                Preview Code
                {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
                powercfg.exe /hibernate off\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
                powercfg.exe /hibernate on\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

                Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

                Preview Code
                {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

                Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

                You can find information about services on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

                Startup Type: Manual

                Original Type: Automatic

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/","title":"Prefer IPv4 over IPv6","text":"

                Last Updated: 2024-08-27

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/#description","title":"Description","text":"

                To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.

                Preview Code
                {\n  \"Content\": \"Prefer IPv4 over IPv6\",\n  \"Description\": \"To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"32\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/IPv46\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

                Type: DWord

                Original Value: 0

                New Value: 32

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

                Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

                Preview Code
                {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
                      Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
                      Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

                Type: DWord

                Original Value: 1

                New Value: 2

                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

                Type: DWord

                Original Value: 0

                New Value: 2

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

                Disables Location Tracking...DUH!

                Preview Code
                {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

                Type: String

                Original Value: Allow

                New Value: Deny

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

                This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

                Preview Code
                {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
                Invoke-WPFTweakPS7 -action \"PS7\"\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
                Invoke-WPFTweakPS7 -action \"PS5\"\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
                function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
                Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
                function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
                function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

                This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

                Preview Code
                {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
                [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
                [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

                Creates a restore point at runtime in case a revert is needed from WinUtil modifications

                Preview Code
                {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
                        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

                Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

                Preview Code
                {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

                Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

                You can find information about services on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

                Startup Type: Disabled

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

                Startup Type: Disabled

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

                Startup Type: Disabled

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

                Startup Type: Manual

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

                Storage Sense deletes temp files automatically.

                Preview Code
                {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
                Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
                Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

                Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

                Preview Code
                {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
                      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

                Type: DWord

                Original Value: 0

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

                Type: DWord

                Original Value: 1

                New Value: 4294967295

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

                Type: DWord

                Original Value: 0

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

                Type: DWord

                Original Value: 1

                New Value: 2

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

                Type: String

                Original Value: 400

                New Value: 400

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

                Type: DWord

                Original Value: 20

                New Value: 30

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

                Type: DWord

                Original Value: 1

                New Value: 2

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

                Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

                You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

                State: Disabled

                Original State: Enabled

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

                Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

                Preview Code
                {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
                "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
                Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
                "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
                Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
                "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
                function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

                Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

                Preview Code
                {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
                      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
                      # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

                USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

                Preview Code
                {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
                        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

                Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

                Preview Code
                {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
                      function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
                      function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

                Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

                You can find information about services on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

                Startup Type: Disabled

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

                Startup Type: Disabled

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

                Startup Type: Disabled

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

                Startup Type: Manual

                Original Type: Automatic

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

                Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

                Preview Code
                {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

                Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

                Preview Code
                {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

                Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

                Preview Code
                {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
                        Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
                      Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

                Disables all Notifications INCLUDING Calendar

                Preview Code
                {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

                Disables IPv6.

                Preview Code
                {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
                Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
                Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

                Type: DWord

                Original Value: 0

                New Value: 255

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

                Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

                Preview Code
                {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
                Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
                Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

                Type: String

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

                Type: String

                Original Value: 1

                New Value: 200

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

                Type: String

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

                Type: DWord

                Original Value: 1

                New Value: 3

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
                function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

                Disables MS Copilot AI built into Windows since 23H2.

                Preview Code
                {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
                      Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
                      Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

                Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

                Preview Code
                {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
                         Uninstall-WinUtilEdgeBrowser\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
                      Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
                Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

                Removes the Home and Gallery from explorer and sets This PC as default

                Preview Code
                {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
                      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
                      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

                Moves OneDrive files to Default Home Folders and Uninstalls it.

                Preview Code
                {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
                      $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
                      Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

                Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

                Preview Code
                {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
                      New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
                      Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/","title":"Disable Teredo","text":"

                Last Updated: 2024-08-27

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#description","title":"Description","text":"

                Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games

                Preview Code
                {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#invoke-script","title":"Invoke Script","text":"
                netsh interface teredo set state disabled\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#undo-script","title":"Undo Script","text":"
                netsh interface teredo set state default\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

                Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

                Preview Code
                {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
                function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
                function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

                View the JSON file

                "}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to the WinUtil Documentation!","text":"

                Welcome to the official documentation for WinUtil, your go-to utility for optimizing and managing your Windows environment. Whether you\u2019re an IT professional, power user, or regular user, WinUtil provides a comprehensive set of tools to enhance your Windows experience.

                "},{"location":"#running-the-latest-release-of-winutil","title":"Running the latest release of WinUtil","text":"
                • You will first need to start a Powershell terminal as Admin.
                • Now you can run the following command:
                  irm christitus.com/win | iex\n

                Info

                WinUtil is updated weekly as of the time of writing. Consequently, features and functionalities may evolve, and the documentation may not always reflect the most current images or information.

                "},{"location":"KnownIssues/","title":"Known Issues","text":""},{"location":"KnownIssues/#launch-issues","title":"Launch Issues:","text":"
                • Windows Security (formerly Defender) and other anti-virus software are known to block the script. The script gets flagged due to the fact that it requires administrator privileges & makes drastic system changes.
                • If possible: Allow script in Anti-Virus software settings.

                • If you are having TLS 1.2 issues, or are having trouble resolving christitus.com/win then run with the following command:

                [Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::Tls12;iex(New-Object Net.WebClient).DownloadString('https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1')\n
                • If you are unable to resolve christitus.com/win and are getting errors launching the tool, it might be due to India blocking GitHub's content domain and preventing downloads.
                • Source: https://timesofindia.indiatimes.com/gadgets-news/github-content-domain-blocked-for-these-indian-users-reports/articleshow/96687992.cms

                If you are still having issues try using a VPN, or changing your DNS provider to one of following two providers:

                Provider Primary DNS Secondary DNS Cloudflare 1.1.1.1 1.0.0.1 Google 8.8.8.8 8.8.4.4
                • Script doesn't run/PowerShell crashes:
                • Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11)
                • Run:
                  Set-ExecutionPolicy Unrestricted -Scope Process -Force\n
                • Run:
                  irm christitus.com/win | iex\n
                "},{"location":"KnownIssues/#other-issues","title":"Other Issues:","text":"
                • Windows taking longer to shut down:
                • #69 Turn on fast startup: Press Windows key + R, then type:
                  control /name Microsoft.PowerOptions /page pageGlobalSettings\n
                • If that doesn't work, Disable Hibernation: Press Windows Key+X and select 'PowerShell (Admin)' (Windows 10) or 'Windows Terminal (Admin)' (Windows 11) and enter:
                  powercfg /H off\n
                • #69 95 #232 Windows Search does not work: Enable Background Apps
                • #198 Xbox Game Bar Activation Broken: Set the Xbox Accessory Management Service to Automatic

                  Get-Service -Name \"XboxGipSvc\" | Set-Service -StartupType Automatic\n

                • Winget requires interaction on first run: Manually type 'y' and 'enter' into the PowerShell console to continue

                • (Windows 11) Quick Settings no longer works: Launch the Script and click 'Enable Action Center'

                • Explorer no longer launches: Go to Control Panel, File Explorer Options, Change the 'Open File Explorer to' option to 'This PC'.

                "},{"location":"KnownIssues/#battery-drains-too-fast","title":"Battery drains too fast.","text":"
                • When your battery on the laptop drains too fast, please perform these steps and report the results back to the Winutil community.

                • Check Battery Health:

                • Open a Command Prompt as an administrator.
                • Run the following command to generate a battery report:
                  powercfg /batteryreport /output \"C:\\battery_report.html\"\n
                • Open the generated HTML report to review information about battery health and usage.

                • Review Power Settings:

                • Go to \"Settings\" > \"System\" > \"Power & sleep.\"
                • Adjust power plan settings based on your preferences and usage patterns.
                • Click on \"Additional power settings\" to access advanced power settings.

                • Identify Power-Hungry Apps:

                • Right-click on the taskbar and select \"Task Manager.\"
                • Navigate to the \"Processes\" tab to identify applications with high CPU or memory usage.
                • Consider closing unnecessary background applications.

                • Update Drivers:

                • Visit your laptop manufacturer's website or use Windows Update to check for driver updates.
                • Ensure graphics, chipset, and other essential drivers are up to date.

                • Check for Windows Updates:

                • Go to \"Settings\" > \"Update & Security\" > \"Windows Update.\"
                • Check for and install any available updates for your operating system.

                • Reduce Screen Brightness:

                • Adjust screen brightness based on your preferences and lighting conditions.
                • Go to \"Settings\" > \"System\" > \"Display\" to adjust brightness.

                • Battery Saver Mode:

                • Go to \"Settings\" > \"System\" > \"Battery.\"
                • Turn on \"Battery saver\" to limit background activity and conserve power.

                • Check Power Usage in Settings:

                • Go to \"Settings\" > \"System\" > \"Battery\" > \"Battery usage by app.\"
                • Review the list of apps and their power usage.

                • Check Background Apps:

                • Go to \"Settings\" > \"Privacy\" > \"Background apps.\"
                • Disable unnecessary apps running in the background.

                • Use Powercfg for Analysis:

                  • Open a Command Prompt as an administrator.
                  • Run the following command to analyze energy usage and generate a report:
                    powercfg /energy /output \"C:\\energy_report.html\"\n
                  • Open the generated HTML report to identify energy consumption patterns.
                • Review Event Viewer:

                  • Open Event Viewer by searching for it in the Start menu.
                  • Navigate to \"Windows Logs\" > \"System.\"
                  • Look for events with the source \"Power-Troubleshooter\" to identify power-related events.
                • Check Wake-up Sources:

                  • Open a Command Prompt as an administrator.
                  • Use the command powercfg /requests to identify processes preventing sleep.
                  • Check Task Scheduler for tasks waking up the computer.
                  • Use the command powercfg /waketimers to view active wake timers.
                • Resource Monitor:

                  • Open Resource Monitor from the Start menu.
                  • Navigate to the \"CPU\" tab and identify processes with high CPU usage.
                • Windows Settings - Activity History:

                  • In \"Settings,\" go to \"Privacy\" > \"Activity history.\"
                  • Turn off \"Let Windows collect my activities from this PC.\"
                • Network Adapters:

                  • Open Device Manager by searching for it in the Start menu.
                  • Locate your network adapter, right-click, and go to \"Properties.\"
                  • Under the \"Power Management\" tab, uncheck the option that allows the device to wake the computer.
                • Review Installed Applications:

                  • Manually review installed applications by searching for \"Add or remove programs\" in the Start menu.
                  • Check settings/preferences of individual applications for power-related options.
                  • Uninstall unnecessary or problematic software.
                • By following these detailed instructions, you should be able to thoroughly diagnose and address battery drain issues on your Windows laptop. Adjust settings as needed to optimize power management and improve battery life.

                "},{"location":"KnownIssues/#troubleshoot-errors-during-microwin-usage","title":"Troubleshoot errors during Microwin usage","text":""},{"location":"KnownIssues/#error-0x80041031","title":"Error 0x80041031","text":"
                • This error code typically indicates an issue related to Windows Management Instrumentation (WMI). Here are a few steps you can try to resolve the issue:

                • Reboot Your Computer: Sometimes, a simple reboot can resolve temporary issues. Restart your computer and try mounting the ISO again.

                • Check for System Corruption: Run the System File Checker (SFC) utility to scan and repair system files that may be corrupted.

                  sfc /scannow\n

                • Update Your System: Make sure your operating system is up-to-date. Check for Windows updates and install any pending updates.

                • Check WMI Service: Ensure that the Windows Management Instrumentation (WMI) service is running. You can do this through the Services application:

                • Press Win + R to open the Run dialog.
                • Type services.msc and press Enter.
                • Locate \"Windows Management Instrumentation\" in the list.
                • Make sure to set its status to \"Running\" and the startup type to \"Automatic.\"

                • Check for Security Software Interference: Security software can sometimes interfere with WMI operations. Temporarily disable your antivirus or security software and check if the issue persists.

                • Event Viewer: Check the Event Viewer for more detailed error information. Look for entries related to the 80041031 error and check if there are any additional details that can help identify the cause.

                • Press Win + X and select \"Event Viewer.\"

                • Navigate to \"Windows Logs\" -> \"Application\" or \"System.\"
                • Look for entries with the source related to WMI or the application use to mount the ISO.

                • ISO File Integrity: Ensure that the ISO file you are trying to mount is uncorrupted. Try mounting a different ISO file to see if the issue persists.

                • If the problem persists after trying these steps, additional troubleshooting is required. Consider seeking assistance from Microsoft support or community forums for more specific guidance based on your system configuration and the software you use to mount the ISO.

                "},{"location":"contribute/","title":"How to Contribute?","text":""},{"location":"contribute/#testing","title":"Testing","text":"
                • Test the latest changes to WinUtil by running the pre-release and reporting issues you are encountering to help us continually improve WinUtil!
                "},{"location":"contribute/#run-the-latest-pre-release","title":"Run the latest pre-release","text":"
                irm christitus.com/windev | iex\n

                Keep in mind

                This is a pre-release and should be treated as such. It exists for developers to test the utility and report or fix bugs before they get added to the stable release. Don't use it in production!

                "},{"location":"contribute/#issues","title":"Issues","text":"
                • If you encounter any challenges or problems with the script, I kindly request that you submit them via the \"Issues\" tab on the GitHub repository. By filling out the provided template, you can provide specific details about the issue, allowing me (and others in the community) to promptly address any bugs or consider feature requests.
                "},{"location":"contribute/#contribute-code","title":"Contribute Code","text":"
                • Pull requests are now handled directly on the MAIN branch. This was done since we can now select specific releases to launch via releases in GitHub.

                • If you're doing code changes, then you can submit a PR to main branch, but I am very selective about these.

                Important

                Do not use a code formatter, make massive amounts of line changes, or make multiple feature changes. EACH FEATURE CHANGE SHOULD BE IT'S OWN PULL REQUEST!

                • When creating pull requests, it is essential to thoroughly document all changes made. This includes, but is not limited to, documenting any additions made to the tweaks section and corresponding undo tweak, so users are able to remove the newly added tweaks if necessary, and comprehensive documentation is required for all code changes. Document your changes and briefly explain why you made your changes in your Pull Request Description. Failure to adhere to this format may result in the denial of the pull request. Additionally, any code lacking sufficient documentation may also be denied.

                • By following these guidelines, we can maintain a high standard of quality and ensure that the codebase remains organized and well-documented.

                Note

                When creating a function, please include \"WPF\" or \"WinUtil\" in the file name so it can be loaded into the runspace.

                "},{"location":"contribute/#walk-through","title":"Walk through","text":"
                • This is a guide for beginners. If you are still having issues, look at the following official GitHub documentation:
                  • Commit through WEB
                  • Commit through GitHub Desktop
                  • Create a Pull Request
                "},{"location":"contribute/#overview","title":"Overview","text":"
                %%{init: {\"flowchart\": {\"curve\": \"cardinal\"}} }%%\ngraph TD\n\u00a0 A[Fork Project] --> B[Clone Repository];\n\u00a0 B --> C[Create New Branch];\n\u00a0 C --> D[Make Changes];\n\u00a0 D --> G[Test Changes];\n\u00a0 G --> H{Tests Passed?};\n\u00a0 H -->|Yes| E[Commit Changes];\n\u00a0 H -->|No| J[Fix Issues];\n\u00a0 J --> G;\n\u00a0 E --> F[Push Branch];\n\u00a0 F --> K[Create Pull Request];\n\u00a0 K --> L[Fill out PR template];\n  classDef default stroke:#333,stroke-width:4px,font-size:12pt;

                Info

                This is a diagram to guide you through the process. It may vary depending on the type of change you're making.

                "},{"location":"contribute/#fork-the-repo","title":"Fork the Repo","text":"
                • Fork the WinUtil Repository here to create a copy that will be available in your repository list.
                "},{"location":"contribute/#clone-the-fork","title":"Clone the Fork","text":"

                Tip

                While you can make your changes directly through the Web, we recommend cloning the repo to your device using the application GitHub Desktop (available in WinUtil) to test your fork easily.

                • Install GitHub Desktop if it is not already installed.
                • Log in using the same GitHub account you used to fork WinUtil.
                • Choose the fork under \"Your Repositories\" and press \"clone {repo name}\"
                • Create a new branch and name it something relatable to your changes.

                • Now you can modify WinUtil to your liking using your preferred text editor.

                "},{"location":"contribute/#testing-your-changes","title":"Testing your changes","text":"
                • To test to see if your changes work as intended run following commands in a powershell teminal as admin:

                • Change the directory where you are running the commands to the forked project.

                • cd {path to the folder with the compile.ps1}
                • Run the following command to compile and run WinUtil:
                • .\\Compile.ps1 -run

                • After seeing that your changes work properly, feel free to commit the changes to the repository and make a PR. For help on that, follow the documentation below.
                "},{"location":"contribute/#committing-the-changes","title":"Committing the changes","text":"
                • Before committing your changes, please discard changes made to the winutil.ps1 file, like the following:
                • Now, commit your changes once you are happy with the result.
                • Push the changes to upload them to your fork on github.com.
                "},{"location":"contribute/#making-a-pr","title":"Making a PR","text":"
                • To make a PR on your repo under a new branch linking to the main branch, a button will show and say Preview and Create pull request. Click that button and fill in all the information that is provided on the template. Once all the information is filled in correctly, check your PR to make sure there is not a WinUtil.ps1 file attached to the PR. Once everything is good, make the PR and wait for Chris (the maintainer) to accept or deny your PR. Once it is accepted by Chris, you will be able to see your changes in the \"/windev\" build.
                • If you do not see your feature in the main \"/win\" build, that is fine. All new changes go into the /windev build to make sure everything is working OK before going fully public.
                • Congratulations! You just submitted your first PR. Thank you so much for contributing to WinUtil.
                "},{"location":"devdocs/","title":"Table of Contents","text":""},{"location":"devdocs/#tweaks","title":"Tweaks","text":""},{"location":"devdocs/#essential-tweaks","title":"Essential-Tweaks","text":"
                • Change Windows Terminal default: PowerShell 5 -> PowerShell 7
                • Create Restore Point
                • Debloat Edge
                • Delete Temporary Files
                • Disable Activity History
                • Disable ConsumerFeatures
                • Disable GameDVR
                • Disable Hibernation
                • Disable Homegroup
                • Disable Location Tracking
                • Disable Powershell 7 Telemetry
                • Disable Storage Sense
                • Disable Telemetry
                • Disable Wifi-Sense
                • Enable End Task With Right Click
                • Prefer IPv4 over IPv6
                • Run Disk Cleanup
                • Set Hibernation as default (good for laptops)
                • Set Services to Manual
                "},{"location":"devdocs/#shortcuts","title":"Shortcuts","text":"
                • Create WinUtil Shortcut
                "},{"location":"devdocs/#z-advanced-tweaks-caution","title":"z--Advanced-Tweaks---CAUTION","text":"
                • Adobe Debloat
                • Adobe Network Block
                • Disable Background Apps
                • Disable Fullscreen Optimizations
                • Disable Intel MM (vPro LMS)
                • Disable IPv6
                • Disable Microsoft Copilot
                • Disable Notification Tray/Calendar
                • Disable Teredo
                • DNS
                • Remove ALL MS Store Apps - NOT RECOMMENDED
                • Remove Home and Gallery from explorer
                • Remove Microsoft Edge
                • Remove OneDrive
                • Run OO Shutup 10
                • Set Classic Right-Click Menu
                • Set Display for Performance
                • Set Time to UTC (Dual Boot)
                "},{"location":"devdocs/#customize-preferences","title":"Customize-Preferences","text":"
                • Bing Search in Start Menu
                • Center Taskbar Items
                • Dark Theme for Windows
                • Detailed BSoD
                • Mouse Acceleration
                • NumLock on Startup
                • Search Button in Taskbar
                • Show File Extensions
                • Show Hidden Files
                • Snap Assist Flyout
                • Snap Assist Suggestion
                • Snap Window
                • Sticky Keys
                • Task View Button in Taskbar
                • Verbose Messages During Logon
                • Widgets Button in Taskbar
                "},{"location":"devdocs/#performance-plans","title":"Performance-Plans","text":"
                • Add and Activate Ultimate Performance Profile
                • Remove Ultimate Performance Profile
                "},{"location":"devdocs/#features","title":"Features","text":""},{"location":"devdocs/#fixes","title":"Fixes","text":"
                • Remove Adobe Creative Cloud
                • Reset Network
                • Reset Windows Update
                • Set Up Autologin
                • System Corruption Scan
                • WinGet Reinstall
                "},{"location":"devdocs/#legacy-windows-panels","title":"Legacy-Windows-Panels","text":"
                • Control Panel
                • Network Connections
                • Power Panel
                • Printer Settings
                • Region
                • Sound Settings
                • System Properties
                • User Accounts
                "},{"location":"devdocs/#features_1","title":"Features","text":"
                • All .Net Framework (2,3,4)
                • Disable Legacy F8 Boot Recovery
                • Disable Search Box Web Suggestions in Registry(explorer restart)
                • Enable Daily Registry Backup Task 12.30am
                • Enable Legacy F8 Boot Recovery
                • Enable Search Box Web Suggestions in Registry(explorer restart)
                • HyperV Virtualization
                • Install Features
                • Legacy Media (WMP, DirectPlay)
                • NFS - Network File System
                • Windows Sandbox
                • Windows Subsystem for Linux
                "},{"location":"faq/","title":"FAQ's","text":""},{"location":"faq/#how-do-i-uninstall-winutil","title":"How do I uninstall WinUtil?","text":"
                • You do not have to uninstall WinUtil. As it is a script you run from Powershell it only loads into your RAM. This means as soon as you close WinUtil it will be deleted off your system.
                "},{"location":"faq/#i-applied-a-tweak-and-now-something-doesnt-work-what-do-i-do","title":"I applied a tweak and now something doesn't work, what do I do?","text":"
                • If you applied a tweak and it breaks something, you can always revert the tweak by selecting the tweak and clicking \"Undo Selected Tweaks\".
                "},{"location":"userguide/","title":"Walkthrough","text":""},{"location":"userguide/#install","title":"Install","text":"Installation & UpdatesUpgrade AllUninstallGet InstalledClear Selection
                • Choose the programs you want to install or upgrade.
                  • For programs not currently installed, this action will install them.
                  • For programs already installed, this action will update them to the latest version.
                • Click the Install/Upgrade Selected button to start the installation or upgrade process.
                • Simply press the Upgrade All button.
                • This will upgrade all applicable programs that are installed without the need for individual selection.
                • Select the programs you wish to uninstall.
                • Click the Uninstall Selected button to remove the selected programs.
                • Click the Get Installed button.
                • This will scan for and select all installed programs in WinUtil that WinGet supports.
                • Click the Clear Selection button.
                • This will unselect all checked programs.

                Tip

                If you have trouble finding an application, press ctrl + f and search the name of it. Applications will filter depending on your input.

                "},{"location":"userguide/#tweaks","title":"Tweaks","text":""},{"location":"userguide/#run-tweaks","title":"Run Tweaks","text":"
                • Open Tweaks Tab: Navigate to the 'Tweaks' tab in the application.
                • Select Tweaks: Choose the tweaks you want to apply. You can use the presets available at the top for convenience.
                • Run Tweaks: After selecting the desired tweaks, click the 'Run Tweaks' button at the bottom of the screen.
                "},{"location":"userguide/#undo-tweaks","title":"Undo Tweaks","text":"
                • Open Tweaks Tab: Go to the 'Tweaks' tab located next to 'Install'.
                • Select Tweaks to Remove: Choose the tweaks you want to disable or remove.
                • Undo Tweaks: Click the 'Undo Selected Tweaks' button at the bottom of the screen to apply the changes.
                "},{"location":"userguide/#essential-tweaks","title":"Essential Tweaks","text":"

                Essential Tweaks are modifications and optimizations that are generally safe for most users to implement. These tweaks are designed to enhance system performance, improve privacy, and reduce unnecessary system activities. They are considered low-risk and are recommended for users who want to ensure their system runs smoothly and efficiently without delving too deeply into complex configurations. The goal of Essential Tweaks is to provide noticeable improvements with minimal risk, making them suitable for a wide range of users, including those who may not have advanced technical knowledge.

                "},{"location":"userguide/#advanced-tweaks-caution","title":"Advanced Tweaks - CAUTION","text":"

                Advanced Tweaks are intended for experienced users who have a solid understanding of their system and the potential implications of making deep-level changes. These tweaks involve more significant alterations to the operating system and can provide substantial customization. However, they also carry a higher risk of causing system instability or unintended side effects if not implemented correctly. Users who choose to apply Advanced Tweaks should proceed with caution, ensuring they have adequate knowledge and backups in place to recover if something goes wrong. These tweaks are not recommended for novice users or those unfamiliar with the inner workings of their operating system.

                "},{"location":"userguide/#oo-shutup","title":"O&O Shutup","text":"

                O&O ShutUp10++ can be launched from WinUtil with only one button click. It is a free privacy tool for Windows that lets users easily manage their privacy settings. It disables telemetry, controls updates, and manages app permissions to enhance security and privacy. The tool offers recommended settings for optimal privacy with just a few clicks.

                "},{"location":"userguide/#dns","title":"DNS","text":"

                The utility provides a convenient DNS selection feature, allowing users to choose between various DNS providers for both IPv4 and IPv6. This enables users to optimize their internet connection for speed, security, and privacy according to their specific needs. Here are the available options:

                • Default: Uses the default DNS settings configured by your ISP or network.
                • DHCP: Automatically acquires DNS settings from the DHCP server.
                • Google: A reliable and fast DNS service provided by Google.
                • Cloudflare: Known for speed and privacy, Cloudflare DNS is a popular choice for enhancing internet performance.
                • Cloudflare_Malware: Provides additional protection by blocking malware sites.
                • Cloudflare_Malware_Adult: Blocks both malware and adult content, offering more comprehensive filtering.
                • Level3: Another fast and reliable DNS service option.
                • Open_DNS: Offers customizable filtering and enhanced security features.
                • Quad9: Focuses on security by blocking known malicious domains.
                "},{"location":"userguide/#customize-preferences","title":"Customize Preferences","text":"

                The Customize Preferences section allows users to personalize their Windows experience by toggling various visual and functional features. These preferences are designed to enhance usability and tailor the system to the user\u2019s specific needs and preferences.

                "},{"location":"userguide/#performance-plans","title":"Performance Plans","text":"

                The Performance Plans section allows users to manage the Ultimate Performance Profile on their system. This feature is designed to optimize the system for maximum performance.

                "},{"location":"userguide/#add-and-activate-the-ultimate-performance-profile","title":"Add and activate the Ultimate Performance Profile:","text":"
                • Enables and activates the Ultimate Performance Profile to enhance system performance by minimizing latency and increasing efficiency.
                "},{"location":"userguide/#remove-ultimate-performance-profile","title":"Remove Ultimate Performance Profile:","text":"
                • Deactivates the Ultimate Performance Profile, changing the system to the Balanced Profile.
                "},{"location":"userguide/#shortcuts","title":"Shortcuts","text":"

                The utility includes a feature to easily create a desktop shortcut, providing quick access to the script.

                "},{"location":"userguide/#config","title":"Config","text":""},{"location":"userguide/#features","title":"Features","text":"
                • Install the most used Windows Features by checking the checkbox and clicking \"Install Features\" to install them.

                • All .Net Frameworks (2, 3, 4)

                • HyperV Virtualization
                • Legacy Media (WMP, DirectPlay)
                • NFS - Network File System
                • Enable Search Box Web Suggestions in Registry (explorer restart)
                • Disables Search Box Web Suggestions in Registry (explorer restart)
                • Enable Daily Registry Backup Task 12:30am
                • Enable Legacy F8 Boot Recovery
                • Disable Legacy F8 Boot Recovery
                • Windows Subsystem for Linux
                • Windows Sandbox
                "},{"location":"userguide/#fixes","title":"Fixes","text":"
                • Quick fixes for your system if you are having issues.

                • Set Up Autologin

                • Reset Windows Update
                • Reset Network
                • System Corruption Scan
                • WinGet Reinstall
                • Remove Adobe Creative Cloud
                "},{"location":"userguide/#legacy-windows-panels","title":"Legacy Windows Panels","text":"

                Open old-school Windows panels directly from WinUtil. Following Panels are available:

                • Control Panel
                • Network Connections
                • Power Panel
                • Region
                • Sound Settings
                • System Properties
                • User Accounts
                "},{"location":"userguide/#updates","title":"Updates","text":"

                The utility provides three distinct settings for managing Windows updates: Default (Out of Box) Settings, Security (Recommended) Settings, and Disable ALL Updates (NOT RECOMMENDED!). Each setting offers a different approach to handling updates, catering to various user needs and preferences.

                "},{"location":"userguide/#default-out-of-box-settings","title":"Default (Out of Box) Settings","text":"
                • Description: This setting retains the default configurations that come with Windows, ensuring no modifications are made.
                • Functionality: It will remove any custom Windows update settings previously applied.
                • Note: If update errors persist, reset all updates in the configuration tab to restore all Microsoft Update Services to their default settings, reinstalling them from their servers.
                "},{"location":"userguide/#security-recommended-settings","title":"Security (Recommended) Settings","text":"
                • Description: This is the recommended setting for all computers.
                • Update Schedule:
                  • Feature Updates: Delays feature updates by 2 years to avoid potential bugs and instability.
                  • Security Updates: Installs security updates 4 days after their release to ensure system protection against pressing security flaws.
                • Rationale:
                  • Feature Updates: Often introduce new features and bugs; delaying these updates minimizes the risk of system disruptions.
                  • Security Updates: Essential for patching critical security vulnerabilities. Delaying them by a few days allows for verification of stability and compatibility without leaving the system exposed for extended periods.
                "},{"location":"userguide/#disable-all-updates-not-recommended","title":"Disable ALL Updates (NOT RECOMMENDED!)","text":"
                • Description: This setting completely disables all Windows updates.
                • Suitability: May be appropriate for systems used for specific purposes that do not require active internet browsing.
                • Warning: Disabling updates significantly increases the risk of the system being hacked or infected due to the lack of security patches.
                • Note: It is strongly advised against using this setting due to the heightened security risks.

                Bug

                The Updates tab is currently non-functional. We are actively working on a resolution to restore its functionality.

                "},{"location":"userguide/#microwin","title":"MicroWin","text":"
                • MicroWin lets you customize your Windows 10 and 11 installation images by debloating them however you want.
                "},{"location":"userguide/#basic-usage","title":"Basic usage","text":"
                1. Specify the source Windows ISO to customize.

                  • If you don't have a Windows ISO file prepared, you can download it using the Media Creation Tool for the respective Windows version. Here is the Windows 11 version, and here is the Windows 10 version
                2. Configure the debloat process.

                3. Specify the target location for the new ISO file.
                4. Let the magic happen!

                Heads-up

                This feature is still in development, and you may encounter some issues with the generated images. If that happens, don't hesitate to report an issue!

                "},{"location":"userguide/#options","title":"Options","text":"
                • Download oscdimg.exe from the CTT GitHub repo will grab an OSCDIMG executable from the GitHub repository instead of a Chocolatey package.

                Info

                OSCDIMG is the tool that lets the program create ISO images. Typically, you would find this in the Windows Assessment and Deployment Kit

                • Selecting a scratch directory will copy the contents of the ISO file to the directory you specify instead of an automatically generated folder in the %TEMP% directory.
                • You can select an edition of Windows to debloat (SKU) using the convenient drop-down menu.

                By default, MicroWin will debloat the Pro edition, but you can choose any edition you want.

                "},{"location":"userguide/#driver-integration-options","title":"Driver integration options","text":"
                • Inject drivers will add the drivers in the folder that you specify to the target Windows image.
                • Import drivers from the current system will add every third-party driver that is present in your active installation.

                This makes the target image have the same hardware compatibility as the active installation. However, this means that you will only be able to install the target Windows image and take full advantage of it on computers with the same hardware. To avoid this, you'll need to customize the install.wim file of the target ISO in the 'sources` folder.

                "},{"location":"userguide/#custom-user-settings","title":"Custom user settings","text":"

                With MicroWin, you can also configure your user before proceeding if you don't want to use the default User account. To do this, simply type the account name (20 characters maximum), and a password. Then, let MicroWin do the rest.

                Info

                Please make sure that you remember your password. MicroWin will configure auto-login settings, so you won't have to enter your password. However, if you are required to enter your password, it's best that you don't forget it.

                "},{"location":"userguide/#ventoy-options","title":"Ventoy options","text":"
                • Copy to Ventoy will copy the target ISO file to any USB drive with Ventoy installed

                Info

                Ventoy is a solution that lets you boot to any ISO file stored on a drive. Think of it as having multiple bootable USBs in one. Do note, though, that your drive needs to have enough free space for the target ISO file.

                "},{"location":"userguide/#automation","title":"Automation","text":"
                • Some features are available through automation. This allows you to save your config file, pass it to WinUtil, walk away and come back to a finished system. Here is how you can set it up currently with Winutil >24.01.15

                • On the Install Tab, click \"Get Installed\", this will get all installed apps supported by Winutil on the system.

                • Click on the Settings cog in the upper right corner and choose Export. Choose file file and location; this will export the setting file.

                • Copy this file to a USB or somewhere you can use it after Windows installation.

                Tip

                Use the Microwin tab to create a custom Windows image & install the Windows image.

                • On any supported Windows machine, open PowerShell as Admin and run the following command to automatically apply tweaks and install apps from the config file.
                  iex \"& { $(irm christitus.com/win) } -Config [path-to-your-config] -Run\"\n
                • Have a cup of coffee! Come back when it's done.
                "},{"location":"dev/features/Features/DisableLegacyRecovery/","title":"Disable Legacy F8 Boot Recovery","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/DisableLegacyRecovery/#description","title":"Description","text":"

                Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

                Preview Code
                {\n  \"Content\": \"Disable Legacy F8 Boot Recovery\",\n  \"Description\": \"Disables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a019_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableLegacyRecovery\"\n}\n
                "},{"location":"dev/features/Features/DisableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
                      If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 0 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Standard' -Wait\n

                View the JSON file

                "},{"location":"dev/features/Features/DisableSearchSuggestions/","title":"Disable Search Box Web Suggestions in Registry(explorer restart)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/DisableSearchSuggestions/#description","title":"Description","text":"

                Disables web suggestions when searching using Windows Search.

                Preview Code
                {\n  \"Content\": \"Disable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Disables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/DisableSearchSuggestions\"\n}\n
                "},{"location":"dev/features/Features/DisableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
                      If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 1 -Force\n      Stop-Process -name explorer -force\n

                View the JSON file

                "},{"location":"dev/features/Features/EnableLegacyRecovery/","title":"Enable Legacy F8 Boot Recovery","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/EnableLegacyRecovery/#description","title":"Description","text":"

                Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.

                Preview Code
                {\n  \"Content\": \"Enable Legacy F8 Boot Recovery\",\n  \"Description\": \"Enables Advanced Boot Options screen that lets you start Windows in advanced troubleshooting modes.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a018_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager\\\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableLegacyRecovery\"\n}\n
                "},{"location":"dev/features/Features/EnableLegacyRecovery/#invoke-script","title":"Invoke Script","text":"
                      If (!(Test-Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood')) {\n            New-Item -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager\\LastKnownGood' -Name 'Enabled' -Type DWord -Value 1 -Force\n      Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /Set {Current} BootMenuPolicy Legacy' -Wait\n

                View the JSON file

                "},{"location":"dev/features/Features/EnableSearchSuggestions/","title":"Enable Search Box Web Suggestions in Registry(explorer restart)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/EnableSearchSuggestions/#description","title":"Description","text":"

                Enables web suggestions when searching using Windows Search.

                Preview Code
                {\n  \"Content\": \"Enable Search Box Web Suggestions in Registry(explorer restart)\",\n  \"Description\": \"Enables web suggestions when searching using Windows Search.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a015_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      If (!(Test-Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer')) {\n            New-Item -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/EnableSearchSuggestions\"\n}\n
                "},{"location":"dev/features/Features/EnableSearchSuggestions/#invoke-script","title":"Invoke Script","text":"
                      If (!(Test-Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer')) {\n            New-Item -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Force | Out-Null\n      }\n      New-ItemProperty -Path 'HKCU:\\SOFTWARE\\Policies\\Microsoft\\Windows\\Explorer' -Name 'DisableSearchBoxSuggestions' -Type DWord -Value 0 -Force\n      Stop-Process -name explorer -force\n

                View the JSON file

                "},{"location":"dev/features/Features/Install/","title":"Install Features","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Install Features\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a060_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Install\"\n}\n
                "},{"location":"dev/features/Features/Install/#function-invoke-wpffeatureinstall","title":"Function: Invoke-WPFFeatureInstall","text":"
                function Invoke-WPFFeatureInstall {\n    <#\n\n    .SYNOPSIS\n        Installs selected Windows Features\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFFeatureInstall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $Features = (Get-WinUtilCheckBoxes)[\"WPFFeature\"]\n\n    Invoke-WPFRunspace -ArgumentList $Features -DebugPreference $DebugPreference -ScriptBlock {\n        param($Features, $DebugPreference)\n        $sync.ProcessRunning = $true\n        if ($Features.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n        Invoke-WinUtilFeatureInstall $Features\n\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n\n        Write-Host \"===================================\"\n        Write-Host \"---   Features are Installed    ---\"\n        Write-Host \"---  A Reboot may be required   ---\"\n        Write-Host \"===================================\"\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Features/RegBackup/","title":"Enable Daily Registry Backup Task 12.30am","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/RegBackup/#description","title":"Description","text":"

                Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.

                Preview Code
                {\n  \"Content\": \"Enable Daily Registry Backup Task 12.30am\",\n  \"Description\": \"Enables daily registry backup, previously disabled by Microsoft in Windows 10 1803.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a017_\",\n  \"feature\": [],\n  \"InvokeScript\": [\n    \"\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \\\"\\\\Microsoft\\\\Windows\\\\Registry\\\\RegIdleBackup\\\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/RegBackup\"\n}\n
                "},{"location":"dev/features/Features/RegBackup/#invoke-script","title":"Invoke Script","text":"
                      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'EnablePeriodicBackup' -Type DWord -Value 1 -Force\n      New-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Configuration Manager' -Name 'BackupCount' -Type DWord -Value 2 -Force\n      $action = New-ScheduledTaskAction -Execute 'schtasks' -Argument '/run /i /tn \"\\Microsoft\\Windows\\Registry\\RegIdleBackup\"'\n      $trigger = New-ScheduledTaskTrigger -Daily -At 00:30\n      Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'AutoRegBackup' -Description 'Create System Registry Backups' -User 'System'\n

                View the JSON file

                "},{"location":"dev/features/Features/Sandbox/","title":"Windows Sandbox","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/Sandbox/#description","title":"Description","text":"

                Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.

                Preview Code
                {\n  \"Content\": \"Windows Sandbox\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"Description\": \"Windows Sandbox is a lightweight virtual machine that provides a temporary desktop environment to safely run applications and programs in isolation.\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/Sandbox\"\n}\n

                View the JSON file

                "},{"location":"dev/features/Features/dotnet/","title":"All .Net Framework (2,3,4)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/dotnet/#description","title":"Description","text":"

                .NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.

                Preview Code
                {\n  \"Content\": \"All .Net Framework (2,3,4)\",\n  \"Description\": \".NET and .NET Framework is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a010_\",\n  \"feature\": [\n    \"NetFx4-AdvSrvs\",\n    \"NetFx3\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/dotnet\"\n}\n
                "},{"location":"dev/features/Features/dotnet/#features","title":"Features","text":"

                Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

                You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

                "},{"location":"dev/features/Features/dotnet/#features-to-install","title":"Features to install","text":"
                • NetFx4-AdvSrvs
                • NetFx3

                View the JSON file

                "},{"location":"dev/features/Features/hyperv/","title":"HyperV Virtualization","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/hyperv/#description","title":"Description","text":"

                Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.

                Preview Code
                {\n  \"Content\": \"HyperV Virtualization\",\n  \"Description\": \"Hyper-V is a hardware virtualization product developed by Microsoft that allows users to create and manage virtual machines.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a011_\",\n  \"feature\": [\n    \"HypervisorPlatform\",\n    \"Microsoft-Hyper-V-All\",\n    \"Microsoft-Hyper-V\",\n    \"Microsoft-Hyper-V-Tools-All\",\n    \"Microsoft-Hyper-V-Management-PowerShell\",\n    \"Microsoft-Hyper-V-Hypervisor\",\n    \"Microsoft-Hyper-V-Services\",\n    \"Microsoft-Hyper-V-Management-Clients\"\n  ],\n  \"InvokeScript\": [\n    \"Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/hyperv\"\n}\n
                "},{"location":"dev/features/Features/hyperv/#features","title":"Features","text":"

                Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

                You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

                "},{"location":"dev/features/Features/hyperv/#features-to-install","title":"Features to install","text":"
                • HypervisorPlatform
                • Microsoft-Hyper-V-All
                • Microsoft-Hyper-V
                • Microsoft-Hyper-V-Tools-All
                • Microsoft-Hyper-V-Management-PowerShell
                • Microsoft-Hyper-V-Hypervisor
                • Microsoft-Hyper-V-Services
                • Microsoft-Hyper-V-Management-Clients
                "},{"location":"dev/features/Features/hyperv/#invoke-script","title":"Invoke Script","text":"
                Start-Process -FilePath cmd.exe -ArgumentList '/c bcdedit /set hypervisorschedulertype classic' -Wait\n

                View the JSON file

                "},{"location":"dev/features/Features/legacymedia/","title":"Legacy Media (WMP, DirectPlay)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/legacymedia/#description","title":"Description","text":"

                Enables legacy programs from previous versions of windows

                Preview Code
                {\n  \"Content\": \"Legacy Media (WMP, DirectPlay)\",\n  \"Description\": \"Enables legacy programs from previous versions of windows\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a012_\",\n  \"feature\": [\n    \"WindowsMediaPlayer\",\n    \"MediaPlayback\",\n    \"DirectPlay\",\n    \"LegacyComponents\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/legacymedia\"\n}\n
                "},{"location":"dev/features/Features/legacymedia/#features","title":"Features","text":"

                Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

                You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

                "},{"location":"dev/features/Features/legacymedia/#features-to-install","title":"Features to install","text":"
                • WindowsMediaPlayer
                • MediaPlayback
                • DirectPlay
                • LegacyComponents

                View the JSON file

                "},{"location":"dev/features/Features/nfs/","title":"NFS - Network File System","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/nfs/#description","title":"Description","text":"

                Network File System (NFS) is a mechanism for storing files on a network.

                Preview Code
                {\n  \"Content\": \"NFS - Network File System\",\n  \"Description\": \"Network File System (NFS) is a mechanism for storing files on a network.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"feature\": [\n    \"ServicesForNFS-ClientOnly\",\n    \"ClientForNFS-Infrastructure\",\n    \"NFS-Administration\"\n  ],\n  \"InvokeScript\": [\n    \"nfsadmin client stop\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\",\n    \"Set-ItemProperty -Path 'HKLM:\\\\SOFTWARE\\\\Microsoft\\\\ClientForNFS\\\\CurrentVersion\\\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\",\n    \"nfsadmin client start\",\n    \"nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/nfs\"\n}\n
                "},{"location":"dev/features/Features/nfs/#features","title":"Features","text":"

                Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

                You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

                "},{"location":"dev/features/Features/nfs/#features-to-install","title":"Features to install","text":"
                • ServicesForNFS-ClientOnly
                • ClientForNFS-Infrastructure
                • NFS-Administration
                "},{"location":"dev/features/Features/nfs/#invoke-script","title":"Invoke Script","text":"
                nfsadmin client stop\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousUID' -Type DWord -Value 0\nSet-ItemProperty -Path 'HKLM:\\SOFTWARE\\Microsoft\\ClientForNFS\\CurrentVersion\\Default' -Name 'AnonymousGID' -Type DWord -Value 0\nnfsadmin client start\nnfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i\n

                View the JSON file

                "},{"location":"dev/features/Features/wsl/","title":"Windows Subsystem for Linux","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/features/Features/wsl/#description","title":"Description","text":"

                Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.

                Preview Code
                {\n  \"Content\": \"Windows Subsystem for Linux\",\n  \"Description\": \"Windows Subsystem for Linux is an optional feature of Windows that allows Linux programs to run natively on Windows without the need for a separate virtual machine or dual booting.\",\n  \"category\": \"Features\",\n  \"panel\": \"1\",\n  \"Order\": \"a020_\",\n  \"feature\": [\n    \"VirtualMachinePlatform\",\n    \"Microsoft-Windows-Subsystem-Linux\"\n  ],\n  \"InvokeScript\": [],\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Features/wsl\"\n}\n
                "},{"location":"dev/features/Features/wsl/#features","title":"Features","text":"

                Optional Windows Features are additional functionalities or components in the Windows operating system that users can choose to enable or disable based on their specific needs and preferences.

                You can find information about Optional Windows Features on Microsoft's Website for Optional Features.

                "},{"location":"dev/features/Features/wsl/#features-to-install","title":"Features to install","text":"
                • VirtualMachinePlatform
                • Microsoft-Windows-Subsystem-Linux

                View the JSON file

                "},{"location":"dev/features/Fixes/Autologin/","title":"Set Up Autologin","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Set Up Autologin\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a040_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Autologin\"\n}\n
                "},{"location":"dev/features/Fixes/Autologin/#function-invoke-wpfpanelautologin","title":"Function: Invoke-WPFPanelAutologin","text":"
                function Invoke-WPFPanelAutologin {\n    <#\n\n    .SYNOPSIS\n        Enables autologin using Sysinternals Autologon.exe\n\n    #>\n\n    # Official Microsoft recommendation: https://learn.microsoft.com/en-us/sysinternals/downloads/autologon\n    Invoke-WebRequest -Uri \"https://live.sysinternals.com/Autologon.exe\" -OutFile \"$env:temp\\autologin.exe\"\n    cmd /c \"$env:temp\\autologin.exe\" /accepteula\n}\n

                View the JSON file

                "},{"location":"dev/features/Fixes/DISM/","title":"System Corruption Scan","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"System Corruption Scan\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a043_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/DISM\"\n}\n
                "},{"location":"dev/features/Fixes/DISM/#function-invoke-wpfpaneldism","title":"Function: Invoke-WPFPanelDISM","text":"
                function Invoke-WPFPanelDISM {\n    <#\n\n    .SYNOPSIS\n        Checks for system corruption using Chkdsk, SFC, and DISM\n\n    .DESCRIPTION\n        1. Chkdsk    - Fixes disk and filesystem corruption\n        2. SFC Run 1 - Fixes system file corruption, and fixes DISM if it was corrupted\n        3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n        4. SFC Run 2 - Fixes system file corruption, this time with an almost guaranteed uncorrupted system image\n\n    .NOTES\n        Command Arguments:\n            1. Chkdsk\n                /Scan - Runs an online scan on the system drive, attempts to fix any corruption, and queues other corruption for fixing on reboot\n            2. SFC\n                /ScanNow - Performs a scan of the system files and fixes any corruption\n            3. DISM      - Fixes system image corruption, and fixes SFC's system image if it was corrupted\n                /Online - Fixes the currently running system image\n                /Cleanup-Image - Performs cleanup operations on the image, could remove some unneeded temporary files\n                /Restorehealth - Performs a scan of the image and fixes any corruption\n\n    #>\n    Start-Process PowerShell -ArgumentList \"Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;\n    Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;\n    Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;\n    Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;\n    Read-Host '`nPress Enter to Continue'\" -verb runas\n}\n

                View the JSON file

                "},{"location":"dev/features/Fixes/Network/","title":"Reset Network","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Reset Network\",\n  \"category\": \"Fixes\",\n  \"Order\": \"a042_\",\n  \"panel\": \"1\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Network\"\n}\n
                "},{"location":"dev/features/Fixes/Network/#function-invoke-wpffixesnetwork","title":"Function: Invoke-WPFFixesNetwork","text":"
                function Invoke-WPFFixesNetwork {\n    <#\n\n    .SYNOPSIS\n        Resets various network configurations\n\n    #>\n\n    Write-Host \"Resetting Network with netsh\"\n\n    # Reset WinSock catalog to a clean state\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\"\n    # Resets WinHTTP proxy setting to DIRECT\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\"\n    # Removes all user configured IP settings\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\"\n\n    Write-Host \"Process complete. Please reboot your computer.\"\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Network Reset \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"==========================================\"\n    Write-Host \"-- Network Configuration has been Reset --\"\n    Write-Host \"==========================================\"\n}\n

                View the JSON file

                "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/","title":"Remove Adobe Creative Cloud","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Remove Adobe Creative Cloud\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a045_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/RunAdobeCCCleanerTool\"\n}\n
                "},{"location":"dev/features/Fixes/RunAdobeCCCleanerTool/#function-invoke-wpfrunadobecccleanertool","title":"Function: Invoke-WPFRunAdobeCCCleanerTool","text":"
                function Invoke-WPFRunAdobeCCCleanerTool {\n    <#\n    .SYNOPSIS\n        It removes or fixes problem files and resolves permission issues in registry keys.\n    .DESCRIPTION\n        The Creative Cloud Cleaner tool is a utility for experienced users to clean up corrupted installations.\n    #>\n\n    [string]$url=\"https://swupmf.adobe.com/webfeed/CleanerTool/win/AdobeCreativeCloudCleanerTool.exe\"\n\n    Write-Host \"The Adobe Creative Cloud Cleaner tool is hosted at\"\n    Write-Host \"$url\"\n\n    try {\n        # Don't show the progress because it will slow down the download speed\n        $ProgressPreference='SilentlyContinue'\n\n        Invoke-WebRequest -Uri $url -OutFile \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -UseBasicParsing -ErrorAction SilentlyContinue -Verbose\n\n        # Revert back the ProgressPreference variable to the default value since we got the file desired\n        $ProgressPreference='Continue'\n\n        Start-Process -FilePath \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Wait -ErrorAction SilentlyContinue -Verbose\n    } catch {\n        Write-Error $_.Exception.Message\n    } finally {\n        if (Test-Path -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\") {\n            Write-Host \"Cleaning up...\"\n            Remove-Item -Path \"$env:TEMP\\AdobeCreativeCloudCleanerTool.exe\" -Verbose\n        }\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Fixes/Update/","title":"Reset Windows Update","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Reset Windows Update\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Update\"\n}\n
                "},{"location":"dev/features/Fixes/Update/#function-invoke-wpffixesupdate","title":"Function: Invoke-WPFFixesUpdate","text":"
                function Invoke-WPFFixesUpdate {\n\n    <#\n\n    .SYNOPSIS\n        Performs various tasks in an attempt to repair Windows Update\n\n    .DESCRIPTION\n        1. (Aggressive Only) Scans the system for corruption using chkdsk, SFC, and DISM\n            Steps:\n                1. Runs chkdsk /scan /perf\n                    /scan - Runs an online scan on the volume\n                    /perf - Uses more system resources to complete a scan as fast as possible\n                2. Runs SFC /scannow\n                    /scannow - Scans integrity of all protected system files and repairs files with problems when possible\n                3. Runs DISM /Online /Cleanup-Image /RestoreHealth\n                    /Online - Targets the running operating system\n                    /Cleanup-Image - Performs cleanup and recovery operations on the image\n                    /RestoreHealth - Scans the image for component store corruption and attempts to repair the corruption using Windows Update\n                4. Runs SFC /scannow\n                    Ran twice in case DISM repaired SFC\n        2. Stops Windows Update Services\n        3. Remove the QMGR Data file, which stores BITS jobs\n        4. (Aggressive Only) Renames the DataStore and CatRoot2 folders\n            DataStore - Contains the Windows Update History and Log Files\n            CatRoot2 - Contains the Signatures for Windows Update Packages\n        5. Renames the Windows Update Download Folder\n        6. Deletes the Windows Update Log\n        7. (Aggressive Only) Resets the Security Descriptors on the Windows Update Services\n        8. Reregisters the BITS and Windows Update DLLs\n        9. Removes the WSUS client settings\n        10. Resets WinSock\n        11. Gets and deletes all BITS jobs\n        12. Sets the startup type of the Windows Update Services then starts them\n        13. Forces Windows Update to check for updates\n\n    .PARAMETER Aggressive\n        If specified, the script will take additional steps to repair Windows Update that are more dangerous, take a significant amount of time, or are generally unnecessary\n\n    #>\n\n    param($Aggressive = $false)\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -PercentComplete 0\n    # Wait for the first progress bar to show, otherwise the second one won't show\n    Start-Sleep -Milliseconds 200\n\n    if ($Aggressive) {\n        # Scan system for corruption\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Scanning for corruption...\" -PercentComplete 0\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk...\" -PercentComplete 0\n        # 2>&1 redirects stdout, alowing iteration over the output\n        chkdsk.exe /scan /perf 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Get the index of the total percentage\n            $index = $_.IndexOf(\"Total:\")\n            if (\n                # If the percent is found\n                ($percent = try {(\n                    $_.Substring(\n                        $index + 6,\n                        $_.IndexOf(\"%\", $index) - $index - 6\n                    )\n                ).Trim()} catch {0}) `\n                <# And the current percentage is greater than the previous one #>`\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running chkdsk... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC...\" -PercentComplete 0\n        $oldpercent = 0\n        # SFC has a bug when redirected which causes it to output only when the stdout buffer is full, causing the progress bar to move in chunks\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    # Use a different method to get the percentage that accounts for SFC's Unicode output\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM...\" -PercentComplete 0\n        $oldpercent = 0\n        DISM /Online /Cleanup-Image /RestoreHealth | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                ($percent = try {\n                    [int]($_ -replace \"\\[\" -replace \"=\" -replace \" \" -replace \"%\" -replace \"\\]\")\n                } catch {0}) `\n                -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running DISM... ($percent%)\" -PercentComplete $percent\n            }\n        }\n\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC again...\" -PercentComplete 0\n        $oldpercent = 0\n        sfc /scannow 2>&1 | ForEach-Object {\n            # Write stdout to the Verbose stream\n            Write-Verbose $_\n\n            # Filter for lines that contain a percentage that is greater than the previous one\n            if (\n                (\n                    [int]$percent = try {(\n                        (\n                            $_.Substring(\n                                $_.IndexOf(\"n\") + 2,\n                                $_.IndexOf(\"%\") - $_.IndexOf(\"n\") - 2\n                            ).ToCharArray() | Where-Object {$_}\n                        ) -join ''\n                    ).TrimStart()} catch {0}\n                ) -and $percent -gt $oldpercent\n            ) {\n                # Update the progress bar\n                $oldpercent = $percent\n                Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Running SFC... ($percent%)\" -PercentComplete $percent\n            }\n        }\n        Write-Progress -Id 1 -ParentId 0 -Activity \"Scanning for corruption\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Stopping Windows Update Services...\" -PercentComplete 10\n    # Stop the Windows Update Services\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping BITS...\" -PercentComplete 0\n    Stop-Service -Name BITS -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping wuauserv...\" -PercentComplete 20\n    Stop-Service -Name wuauserv -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping appidsvc...\" -PercentComplete 40\n    Stop-Service -Name appidsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Stopping cryptsvc...\" -PercentComplete 60\n    Stop-Service -Name cryptsvc -Force\n    Write-Progress -Id 2 -ParentId 0 -Activity \"Stopping Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the QMGR Data file\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Renaming/Removing Files...\" -PercentComplete 20\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing QMGR Data files...\" -PercentComplete 0\n    Remove-Item \"$env:allusersprofile\\Application Data\\Microsoft\\Network\\Downloader\\qmgr*.dat\" -ErrorAction SilentlyContinue\n\n\n    if ($Aggressive) {\n        # Rename the Windows Update Log and Signature Folders\n        Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Log, Download, and Signature Folder...\" -PercentComplete 20\n        Rename-Item $env:systemroot\\SoftwareDistribution\\DataStore DataStore.bak -ErrorAction SilentlyContinue\n        Rename-Item $env:systemroot\\System32\\Catroot2 catroot2.bak -ErrorAction SilentlyContinue\n    }\n\n    # Rename the Windows Update Download Folder\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Renaming the Windows Update Download Folder...\" -PercentComplete 20\n    Rename-Item $env:systemroot\\SoftwareDistribution\\Download Download.bak -ErrorAction SilentlyContinue\n\n    # Delete the legacy Windows Update Log\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Removing the old Windows Update log...\" -PercentComplete 80\n    Remove-Item $env:systemroot\\WindowsUpdate.log -ErrorAction SilentlyContinue\n    Write-Progress -Id 3 -ParentId 0 -Activity \"Renaming/Removing Files\" -Status \"Completed\" -PercentComplete 100\n\n\n    if ($Aggressive) {\n        # Reset the Security Descriptors on the Windows Update Services\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting the WU Service Security Descriptors...\" -PercentComplete 25\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the BITS Security Descriptor...\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"bits\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Resetting the wuauserv Security Descriptor...\" -PercentComplete 50\n        Start-Process -NoNewWindow -FilePath \"sc.exe\" -ArgumentList \"sdset\", \"wuauserv\", \"D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)\"\n        Write-Progress -Id 4 -ParentId 0 -Activity \"Resetting the WU Service Security Descriptors\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reregister the BITS and Windows Update DLLs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Reregistering DLLs...\" -PercentComplete 40\n    $oldLocation = Get-Location\n    Set-Location $env:systemroot\\system32\n    $i = 0\n    $DLLs = @(\n        \"atl.dll\", \"urlmon.dll\", \"mshtml.dll\", \"shdocvw.dll\", \"browseui.dll\",\n        \"jscript.dll\", \"vbscript.dll\", \"scrrun.dll\", \"msxml.dll\", \"msxml3.dll\",\n        \"msxml6.dll\", \"actxprxy.dll\", \"softpub.dll\", \"wintrust.dll\", \"dssenh.dll\",\n        \"rsaenh.dll\", \"gpkcsp.dll\", \"sccbase.dll\", \"slbcsp.dll\", \"cryptdlg.dll\",\n        \"oleaut32.dll\", \"ole32.dll\", \"shell32.dll\", \"initpki.dll\", \"wuapi.dll\",\n        \"wuaueng.dll\", \"wuaueng1.dll\", \"wucltui.dll\", \"wups.dll\", \"wups2.dll\",\n        \"wuweb.dll\", \"qmgr.dll\", \"qmgrprxy.dll\", \"wucltux.dll\", \"muweb.dll\", \"wuwebv.dll\"\n    )\n    foreach ($dll in $DLLs) {\n        Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Registering $dll...\" -PercentComplete ($i / $DLLs.Count * 100)\n        $i++\n        Start-Process -NoNewWindow -FilePath \"regsvr32.exe\" -ArgumentList \"/s\", $dll\n    }\n    Set-Location $oldLocation\n    Write-Progress -Id 5 -ParentId 0 -Activity \"Reregistering DLLs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Remove the WSUS client settings\n    if (Test-Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\") {\n        Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Removing WSUS client settings...\" -PercentComplete 60\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -PercentComplete 0\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"AccountDomainSid\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"PingID\", \"/f\" -RedirectStandardError $true\n        Start-Process -NoNewWindow -FilePath \"REG\" -ArgumentList \"DELETE\", \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\WindowsUpdate\", \"/v\", \"SusClientId\", \"/f\" -RedirectStandardError $true\n        Write-Progress -Id 6 -ParentId 0 -Activity \"Removing WSUS client settings\" -Status \"Completed\" -PercentComplete 100\n    }\n\n\n    # Reset WinSock\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Resetting WinSock...\" -PercentComplete 65\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Resetting WinSock...\" -PercentComplete 0\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winsock\", \"reset\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"winhttp\", \"reset\", \"proxy\" -RedirectStandardOutput $true\n    Start-Process -NoNewWindow -FilePath \"netsh\" -ArgumentList \"int\", \"ip\", \"reset\" -RedirectStandardOutput $true\n    Write-Progress -Id 7 -ParentId 0 -Activity \"Resetting WinSock\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Get and delete all BITS jobs\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Deleting BITS jobs...\" -PercentComplete 75\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Deleting BITS jobs...\" -PercentComplete 0\n    Get-BitsTransfer | Remove-BitsTransfer\n    Write-Progress -Id 8 -ParentId 0 -Activity \"Deleting BITS jobs\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Change the startup type of the Windows Update Services and start them\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Starting Windows Update Services...\" -PercentComplete 90\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting BITS...\" -PercentComplete 0\n    Get-Service BITS | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting wuauserv...\" -PercentComplete 25\n    Get-Service wuauserv | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting AppIDSvc...\" -PercentComplete 50\n    # The AppIDSvc service is protected, so the startup type has to be changed in the registry\n    Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Services\\AppIDSvc\" -Name \"Start\" -Value \"3\" # Manual\n    Start-Service AppIDSvc\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Starting CryptSvc...\" -PercentComplete 75\n    Get-Service CryptSvc | Set-Service -StartupType Manual -PassThru | Start-Service\n    Write-Progress -Id 9 -ParentId 0 -Activity \"Starting Windows Update Services\" -Status \"Completed\" -PercentComplete 100\n\n\n    # Force Windows Update to check for updates\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Forcing discovery...\" -PercentComplete 95\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Forcing discovery...\" -PercentComplete 0\n    (New-Object -ComObject Microsoft.Update.AutoUpdate).DetectNow()\n    Start-Process -NoNewWindow -FilePath \"wuauclt\" -ArgumentList \"/resetauthorization\", \"/detectnow\"\n    Write-Progress -Id 10 -ParentId 0 -Activity \"Forcing discovery\" -Status \"Completed\" -PercentComplete 100\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Status \"Completed\" -PercentComplete 100\n\n    $ButtonType = [System.Windows.MessageBoxButton]::OK\n    $MessageboxTitle = \"Reset Windows Update \"\n    $Messageboxbody = (\"Stock settings loaded.`n Please reboot your computer\")\n    $MessageIcon = [System.Windows.MessageBoxImage]::Information\n\n    [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n    Write-Host \"===============================================\"\n    Write-Host \"-- Reset All Windows Update Settings to Stock -\"\n    Write-Host \"===============================================\"\n\n    # Remove the progress bars\n    Write-Progress -Id 0 -Activity \"Repairing Windows Update\" -Completed\n    Write-Progress -Id 1 -Activity \"Scanning for corruption\" -Completed\n    Write-Progress -Id 2 -Activity \"Stopping Services\" -Completed\n    Write-Progress -Id 3 -Activity \"Renaming/Removing Files\" -Completed\n    Write-Progress -Id 4 -Activity \"Resetting the WU Service Security Descriptors\" -Completed\n    Write-Progress -Id 5 -Activity \"Reregistering DLLs\" -Completed\n    Write-Progress -Id 6 -Activity \"Removing WSUS client settings\" -Completed\n    Write-Progress -Id 7 -Activity \"Resetting WinSock\" -Completed\n    Write-Progress -Id 8 -Activity \"Deleting BITS jobs\" -Completed\n    Write-Progress -Id 9 -Activity \"Starting Windows Update Services\" -Completed\n    Write-Progress -Id 10 -Activity \"Forcing discovery\" -Completed\n}\n

                View the JSON file

                "},{"location":"dev/features/Fixes/Winget/","title":"WinGet Reinstall","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"WinGet Reinstall\",\n  \"category\": \"Fixes\",\n  \"panel\": \"1\",\n  \"Order\": \"a044_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Fixes/Winget\"\n}\n
                "},{"location":"dev/features/Fixes/Winget/#function-invoke-wpffixeswinget","title":"Function: Invoke-WPFFixesWinget","text":"
                function Invoke-WPFFixesWinget {\n\n    <#\n\n    .SYNOPSIS\n        Fixes Winget by running choco install winget\n    .DESCRIPTION\n        BravoNorris for the fantastic idea of a button to reinstall winget\n    #>\n    # Install Choco if not already present\n    Install-WinUtilChoco\n    Start-Process -FilePath \"choco\" -ArgumentList \"install winget -y --force\" -NoNewWindow -Wait\n\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/control/","title":"Control Panel","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Control Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/control\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/control/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/network/","title":"Network Connections","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Network Connections\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/network\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/network/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/power/","title":"Power Panel","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Power Panel\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/power\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/power/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/printer/","title":"Printer Settings","text":"

                Last Updated: 2024-08-31

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Printer Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/printer/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelprinter\" {Start-Process \"shell:::{A8A91A66-3A7D-4424-8D24-04E180695C7A}\"}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/region/","title":"Region","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Region\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/region\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/region/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/sound/","title":"Sound Settings","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Sound Settings\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/sound\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/sound/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/system/","title":"System Properties","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"System Properties\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/system\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/system/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/features/Legacy-Windows-Panels/user/","title":"User Accounts","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"User Accounts\",\n  \"category\": \"Legacy Windows Panels\",\n  \"panel\": \"2\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/features/Legacy-Windows-Panels/user\"\n}\n
                "},{"location":"dev/features/Legacy-Windows-Panels/user/#function-invoke-wpfcontrolpanel","title":"Function: Invoke-WPFControlPanel","text":"
                function Invoke-WPFControlPanel {\n    <#\n\n    .SYNOPSIS\n        Opens the requested legacy panel\n\n    .PARAMETER Panel\n        The panel to open\n\n    #>\n    param($Panel)\n\n    switch ($Panel) {\n        \"WPFPanelcontrol\" {cmd /c control}\n        \"WPFPanelnetwork\" {cmd /c ncpa.cpl}\n        \"WPFPanelpower\"   {cmd /c powercfg.cpl}\n        \"WPFPanelregion\"  {cmd /c intl.cpl}\n        \"WPFPanelsound\"   {cmd /c mmsys.cpl}\n        \"WPFPanelsystem\"  {cmd /c sysdm.cpl}\n        \"WPFPaneluser\"    {cmd /c \"control userpasswords2\"}\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/","title":"Bing Search in Start Menu","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#description","title":"Description","text":"

                If enable then includes web search results from Bing in your Start Menu search.

                Preview Code
                {\n  \"Content\": \"Bing Search in Start Menu\",\n  \"Description\": \"If enable then includes web search results from Bing in your Start Menu search.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a101_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/BingSearch\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/BingSearch/#function-invoke-winutilbingsearch","title":"Function: Invoke-WinUtilBingSearch","text":"
                function Invoke-WinUtilBingSearch {\n    <#\n\n    .SYNOPSIS\n        Disables/Enables Bing Search\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Bing Search\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Bing Search\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Bing Search\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\"\n        Set-ItemProperty -Path $Path -Name BingSearchEnabled -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/","title":"Dark Theme for Windows","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#description","title":"Description","text":"

                Enable/Disable Dark Mode.

                Preview Code
                {\n  \"Content\": \"Dark Theme for Windows\",\n  \"Description\": \"Enable/Disable Dark Mode.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a100_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DarkMode\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/DarkMode/#function-invoke-winutildarkmode","title":"Function: Invoke-WinUtilDarkMode","text":"
                Function Invoke-WinUtilDarkMode {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Dark Mode\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current dark mode state\n\n    #>\n    Param($DarkMoveEnabled)\n    try {\n        if ($DarkMoveEnabled -eq $false) {\n            Write-Host \"Enabling Dark Mode\"\n            $DarkMoveValue = 0\n        } else {\n            Write-Host \"Disabling Dark Mode\"\n            $DarkMoveValue = 1\n        }\n\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize\"\n        Set-ItemProperty -Path $Path -Name AppsUseLightTheme -Value $DarkMoveValue\n        Set-ItemProperty -Path $Path -Name SystemUsesLightTheme -Value $DarkMoveValue\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/","title":"Detailed BSoD","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#description","title":"Description","text":"

                If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.

                Preview Code
                {\n  \"Content\": \"Detailed BSoD\",\n  \"Description\": \"If Enabled then you will see a detailed Blue Screen of Death (BSOD) with more information.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a205_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/DetailedBSoD\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/DetailedBSoD/#function-invoke-winutildetailedbsod","title":"Function: Invoke-WinUtilDetailedBSoD","text":"
                Function Invoke-WinUtilDetailedBSoD {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Detailed BSoD\n        (Get-ItemProperty -Path 'HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl' -Name 'DisplayParameters').DisplayParameters\n\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Detailed BSoD\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Detailed BSoD\"\n            $value =0\n        }\n\n        $Path = \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\\CrashControl\"\n        Set-ItemProperty -Path $Path -Name DisplayParameters -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/","title":"Show Hidden Files","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#description","title":"Description","text":"

                If Enabled then Hidden Files will be shown.

                Preview Code
                {\n  \"Content\": \"Show Hidden Files\",\n  \"Description\": \"If Enabled then Hidden Files will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a200_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/HiddenFiles\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/HiddenFiles/#function-invoke-winutilhiddenfiles","title":"Function: Invoke-WinUtilHiddenFiles","text":"
                function Invoke-WinUtilHiddenFiles {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Hidden Files\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Hidden Files\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Hidden Files\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Hidden Files\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name Hidden -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/","title":"Mouse Acceleration","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#description","title":"Description","text":"

                If Enabled then Cursor movement is affected by the speed of your physical mouse movements.

                Preview Code
                {\n  \"Content\": \"Mouse Acceleration\",\n  \"Description\": \"If Enabled then Cursor movement is affected by the speed of your physical mouse movements.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a107_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/MouseAcceleration\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/MouseAcceleration/#function-invoke-winutilmouseacceleration","title":"Function: Invoke-WinUtilMouseAcceleration","text":"
                Function Invoke-WinUtilMouseAcceleration {\n    <#\n\n    .SYNOPSIS\n        Enables/Disables Mouse Acceleration\n\n    .PARAMETER DarkMoveEnabled\n        Indicates the current Mouse Acceleration State\n\n    #>\n    Param($MouseAccelerationEnabled)\n    try {\n        if ($MouseAccelerationEnabled -eq $false) {\n            Write-Host \"Enabling Mouse Acceleration\"\n            $MouseSpeed = 1\n            $MouseThreshold1 = 6\n            $MouseThreshold2 = 10\n        } else {\n            Write-Host \"Disabling Mouse Acceleration\"\n            $MouseSpeed = 0\n            $MouseThreshold1 = 0\n            $MouseThreshold2 = 0\n\n        }\n\n        $Path = \"HKCU:\\Control Panel\\Mouse\"\n        Set-ItemProperty -Path $Path -Name MouseSpeed -Value $MouseSpeed\n        Set-ItemProperty -Path $Path -Name MouseThreshold1 -Value $MouseThreshold1\n        Set-ItemProperty -Path $Path -Name MouseThreshold2 -Value $MouseThreshold2\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/NumLock/","title":"NumLock on Startup","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#description","title":"Description","text":"

                Toggle the Num Lock key state when your computer starts.

                Preview Code
                {\n  \"Content\": \"NumLock on Startup\",\n  \"Description\": \"Toggle the Num Lock key state when your computer starts.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a102_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/NumLock\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/NumLock/#function-invoke-winutilnumlock","title":"Function: Invoke-WinUtilNumLock","text":"
                function Invoke-WinUtilNumLock {\n    <#\n    .SYNOPSIS\n        Disables/Enables NumLock on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Numlock on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Numlock on startup\"\n            $value = 2\n        } else {\n            Write-Host \"Disabling Numlock on startup\"\n            $value = 0\n        }\n        New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS\n        $HKUPath = \"HKU:\\.Default\\Control Panel\\Keyboard\"\n        $HKCUPath = \"HKCU:\\Control Panel\\Keyboard\"\n        Set-ItemProperty -Path $HKUPath -Name InitialKeyboardIndicators -Value $value\n        Set-ItemProperty -Path $HKCUPath -Name InitialKeyboardIndicators -Value $value\n    }\n    Catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/","title":"Show File Extensions","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#description","title":"Description","text":"

                If enabled then File extensions (e.g., .txt, .jpg) are visible.

                Preview Code
                {\n  \"Content\": \"Show File Extensions\",\n  \"Description\": \"If enabled then File extensions (e.g., .txt, .jpg) are visible.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a201_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/ShowExt\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/ShowExt/#function-invoke-winutilshowext","title":"Function: Invoke-WinUtilShowExt","text":"
                function Invoke-WinUtilShowExt {\n    <#\n    .SYNOPSIS\n        Disables/Enables Show file Extentions\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Show file extentions\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Showing file extentions\"\n            $value = 0\n        } else {\n            Write-Host \"hiding file extensions\"\n            $value = 1\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name HideFileExt -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/","title":"Snap Assist Flyout","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#description","title":"Description","text":"

                If enabled then Snap preview is disabled when maximize button is hovered.

                Preview Code
                {\n  \"Content\": \"Snap Assist Flyout\",\n  \"Description\": \"If enabled then Snap preview is disabled when maximize button is hovered.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a105_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapFlyout\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/SnapFlyout/#function-invoke-winutilsnapflyout","title":"Function: Invoke-WinUtilSnapFlyout","text":"
                function Invoke-WinUtilSnapFlyout {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Flyout on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Flyout on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Flyout On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Flyout On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name EnableSnapAssistFlyout -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/","title":"Snap Assist Suggestion","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#description","title":"Description","text":"

                If enabled then you will get suggestions to snap other applications in the left over spaces.

                Preview Code
                {\n  \"Content\": \"Snap Assist Suggestion\",\n  \"Description\": \"If enabled then you will get suggestions to snap other applications in the left over spaces.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a106_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapSuggestion\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/SnapSuggestion/#function-invoke-winutilsnapsuggestion","title":"Function: Invoke-WinUtilSnapSuggestion","text":"
                function Invoke-WinUtilSnapSuggestion {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snap Assist Suggestions on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snap Assist Suggestions on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Assist Suggestion On startup\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Assist Suggestion On startup\"\n            $value = 0\n        }\n        # taskkill.exe /F /IM \"explorer.exe\"\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        taskkill.exe /F /IM \"explorer.exe\"\n        Set-ItemProperty -Path $Path -Name SnapAssist -Value $value\n        Start-Process \"explorer.exe\"\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/","title":"Snap Window","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#description","title":"Description","text":"

                If enabled you can align windows by dragging them. | Relogin Required

                Preview Code
                {\n  \"Content\": \"Snap Window\",\n  \"Description\": \"If enabled you can align windows by dragging them. | Relogin Required\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a104_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/SnapWindow\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/SnapWindow/#function-invoke-winutilsnapwindow","title":"Function: Invoke-WinUtilSnapWindow","text":"
                function Invoke-WinUtilSnapWindow {\n    <#\n    .SYNOPSIS\n        Disables/Enables Snapping Windows on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Snapping Windows on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Snap Windows On startup | Relogin Required\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Snap Windows On startup | Relogin Required\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Control Panel\\Desktop\"\n        Set-ItemProperty -Path $Path -Name WindowArrangementActive -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/","title":"Sticky Keys","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#description","title":"Description","text":"

                If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.

                Preview Code
                {\n  \"Content\": \"Sticky Keys\",\n  \"Description\": \"If Enabled then Sticky Keys is activated - Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a108_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/StickyKeys\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/StickyKeys/#function-invoke-winutilstickykeys","title":"Function: Invoke-WinUtilStickyKeys","text":"
                Function Invoke-WinUtilStickyKeys {\n    <#\n    .SYNOPSIS\n        Disables/Enables Sticky Keyss on startup\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Sticky Keys on startup\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Sticky Keys On startup\"\n            $value = 510\n        } else {\n            Write-Host \"Disabling Sticky Keys On startup\"\n            $value = 58\n        }\n        $Path = \"HKCU:\\Control Panel\\Accessibility\\StickyKeys\"\n        Set-ItemProperty -Path $Path -Name Flags -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/TaskView/","title":"Task View Button in Taskbar","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#description","title":"Description","text":"

                If Enabled then Task View Button in Taskbar will be shown.

                Preview Code
                {\n  \"Content\": \"Task View Button in Taskbar\",\n  \"Description\": \"If Enabled then Task View Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a203_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskView\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/TaskView/#function-invoke-winutiltaskview","title":"Function: Invoke-WinUtilTaskView","text":"
                function Invoke-WinUtilTaskView {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Task View\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Task View\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Task View\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Task View\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name ShowTaskViewButton -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/","title":"Center Taskbar Items","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#description","title":"Description","text":"

                [Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.

                Preview Code
                {\n  \"Content\": \"Center Taskbar Items\",\n  \"Description\": \"[Windows 11] If Enabled then the Taskbar Items will be shown on the Center, otherwise the Taskbar Items will be shown on the Left.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarAlignment\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarAlignment/#function-invoke-winutiltaskbaralignment","title":"Function: Invoke-WinUtilTaskbarAlignment","text":"
                function Invoke-WinUtilTaskbarAlignment {\n    <#\n\n    .SYNOPSIS\n        Switches between Center & Left Taskbar Alignment\n\n    .PARAMETER Enabled\n        Indicates whether to make Taskbar Alignment Center or Left\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Making Taskbar Alignment to the Center\"\n            $value = 1\n        } else {\n            Write-Host \"Making Taskbar Alignment to the Left\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name \"TaskbarAl\" -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/","title":"Search Button in Taskbar","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#description","title":"Description","text":"

                If Enabled Search Button will be on the taskbar.

                Preview Code
                {\n  \"Content\": \"Search Button in Taskbar\",\n  \"Description\": \"If Enabled Search Button will be on the taskbar.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a202_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarSearch\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarSearch/#function-invoke-winutiltaskbarsearch","title":"Function: Invoke-WinUtilTaskbarSearch","text":"
                function Invoke-WinUtilTaskbarSearch {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Search Button.\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Search Button.\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Search Button\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Search Button\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Search\\\"\n        Set-ItemProperty -Path $Path -Name SearchboxTaskbarMode -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/","title":"Widgets Button in Taskbar","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#description","title":"Description","text":"

                If Enabled then Widgets Button in Taskbar will be shown.

                Preview Code
                {\n  \"Content\": \"Widgets Button in Taskbar\",\n  \"Description\": \"If Enabled then Widgets Button in Taskbar will be shown.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a204_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/TaskbarWidgets\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/TaskbarWidgets/#function-invoke-winutiltaskbarwidgets","title":"Function: Invoke-WinUtilTaskbarWidgets","text":"
                function Invoke-WinUtilTaskbarWidgets {\n    <#\n\n    .SYNOPSIS\n        Enable/Disable Taskbar Widgets\n\n    .PARAMETER Enabled\n        Indicates whether to enable or disable Taskbar Widgets\n\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Taskbar Widgets\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Taskbar Widgets\"\n            $value = 0\n        }\n        $Path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\"\n        Set-ItemProperty -Path $Path -Name TaskbarDa -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/","title":"Verbose Messages During Logon","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#description","title":"Description","text":"

                Show detailed messages during the login process for troubleshooting and diagnostics.

                Preview Code
                {\n  \"Content\": \"Verbose Messages During Logon\",\n  \"Description\": \"Show detailed messages during the login process for troubleshooting and diagnostics.\",\n  \"category\": \"Customize Preferences\",\n  \"panel\": \"2\",\n  \"Order\": \"a103_\",\n  \"Type\": \"Toggle\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Customize-Preferences/VerboseLogon\"\n}\n
                "},{"location":"dev/tweaks/Customize-Preferences/VerboseLogon/#function-invoke-winutilverboselogon","title":"Function: Invoke-WinUtilVerboseLogon","text":"
                function Invoke-WinUtilVerboseLogon {\n    <#\n    .SYNOPSIS\n        Disables/Enables VerboseLogon Messages\n    .PARAMETER Enabled\n        Indicates whether to enable or disable VerboseLogon messages\n    #>\n    Param($Enabled)\n    try {\n        if ($Enabled -eq $false) {\n            Write-Host \"Enabling Verbose Logon Messages\"\n            $value = 1\n        } else {\n            Write-Host \"Disabling Verbose Logon Messages\"\n            $value = 0\n        }\n        $Path = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System\"\n        Set-ItemProperty -Path $Path -Name VerboseStatus -Value $value\n    } catch [System.Security.SecurityException] {\n        Write-Warning \"Unable to set $Path\\$Name to $Value due to a Security Exception\"\n    } catch [System.Management.Automation.ItemNotFoundException] {\n        Write-Warning $psitem.Exception.ErrorRecord\n    } catch {\n        Write-Warning \"Unable to set $Name due to unhandled exception\"\n        Write-Warning $psitem.Exception.StackTrace\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/AH/","title":"Disable Activity History","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/AH/#description","title":"Description","text":"

                This erases recent docs, clipboard, and run history.

                Preview Code
                {\n  \"Content\": \"Disable Activity History\",\n  \"Description\": \"This erases recent docs, clipboard, and run history.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"EnableActivityFeed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"PublishUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\System\",\n      \"Name\": \"UploadUserActivities\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/AH\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-enableactivityfeed","title":"Registry Key: EnableActivityFeed","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-publishuseractivities","title":"Registry Key: PublishUserActivities","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/AH/#registry-key-uploaduseractivities","title":"Registry Key: UploadUserActivities","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/","title":"Disable ConsumerFeatures","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#description","title":"Description","text":"

                Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)

                Preview Code
                {\n  \"Content\": \"Disable ConsumerFeatures\",\n  \"Description\": \"Windows 10 will not automatically install any games, third-party apps, or application links from the Windows Store for the signed-in user. Some default Apps will be inaccessible (eg. Phone Link)\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableWindowsConsumerFeatures\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/ConsumerFeatures\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/ConsumerFeatures/#registry-key-disablewindowsconsumerfeatures","title":"Registry Key: DisableWindowsConsumerFeatures","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/","title":"Disable GameDVR","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#description","title":"Description","text":"

                GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.

                Preview Code
                {\n  \"Content\": \"Disable GameDVR\",\n  \"Description\": \"GameDVR is a Windows App that is a dependency for some Store Games. I've never met someone that likes it, but it's there for the XBOX crowd.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_FSEBehavior\",\n      \"Value\": \"2\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_Enabled\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_HonorUserFSEBehaviorMode\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_EFSEFeatureFlags\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\GameDVR\",\n      \"Name\": \"AllowGameDVR\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DVR\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_fsebehavior","title":"Registry Key: GameDVR_FSEBehavior","text":"

                Type: DWord

                Original Value: 1

                New Value: 2

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_enabled","title":"Registry Key: GameDVR_Enabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_honoruserfsebehaviormode","title":"Registry Key: GameDVR_HonorUserFSEBehaviorMode","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-gamedvr_efsefeatureflags","title":"Registry Key: GameDVR_EFSEFeatureFlags","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/DVR/#registry-key-allowgamedvr","title":"Registry Key: AllowGameDVR","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/","title":"Delete Temporary Files","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#description","title":"Description","text":"

                Erases TEMP Folders

                Preview Code
                {\n  \"Content\": \"Delete Temporary Files\",\n  \"Description\": \"Erases TEMP Folders\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a002_\",\n  \"InvokeScript\": [\n    \"Get-ChildItem -Path \\\"C:\\\\Windows\\\\Temp\\\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DeleteTempFiles\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/DeleteTempFiles/#invoke-script","title":"Invoke Script","text":"
                Get-ChildItem -Path \"C:\\Windows\\Temp\" *.* -Recurse | Remove-Item -Force -Recurse\n    Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/","title":"Run Disk Cleanup","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#description","title":"Description","text":"

                Runs Disk Cleanup on Drive C: and removes old Windows Updates.

                Preview Code
                {\n  \"Content\": \"Run Disk Cleanup\",\n  \"Description\": \"Runs Disk Cleanup on Drive C: and removes old Windows Updates.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"\n      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/DiskCleanup\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/DiskCleanup/#invoke-script","title":"Invoke Script","text":"
                      cleanmgr.exe /d C: /VERYLOWDISK\n      Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/","title":"Debloat Edge","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#description","title":"Description","text":"

                Disables various telemetry options, popups, and other annoyances in Edge.

                Preview Code
                {\n  \"Content\": \"Debloat Edge\",\n  \"Description\": \"Disables various telemetry options, popups, and other annoyances in Edge.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a016_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\EdgeUpdate\",\n      \"Name\": \"CreateDesktopShortcutDefault\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeEnhanceImagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowRecommendationsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"HideFirstRunExperience\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"UserFeedbackAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"AlternateErrorPagesEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeFollowEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeShoppingAssistantEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"MicrosoftEdgeInsiderPromotionEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"PersonalizationReportingEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ShowMicrosoftRewards\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WebWidgetAllowed\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"DiagnosticData\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeAssetDeliveryServiceEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"EdgeCollectionsEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"CryptoWalletEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"ConfigureDoNotTrack\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\",\n      \"Name\": \"WalletDonationEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EdgeDebloat\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-createdesktopshortcutdefault","title":"Registry Key: CreateDesktopShortcutDefault","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeenhanceimagesenabled","title":"Registry Key: EdgeEnhanceImagesEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled","title":"Registry Key: PersonalizationReportingEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showrecommendationsenabled","title":"Registry Key: ShowRecommendationsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-hidefirstrunexperience","title":"Registry Key: HideFirstRunExperience","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-userfeedbackallowed","title":"Registry Key: UserFeedbackAllowed","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack","title":"Registry Key: ConfigureDoNotTrack","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-alternateerrorpagesenabled","title":"Registry Key: AlternateErrorPagesEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled","title":"Registry Key: EdgeCollectionsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgefollowenabled","title":"Registry Key: EdgeFollowEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeshoppingassistantenabled","title":"Registry Key: EdgeShoppingAssistantEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-microsoftedgeinsiderpromotionenabled","title":"Registry Key: MicrosoftEdgeInsiderPromotionEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-personalizationreportingenabled_1","title":"Registry Key: PersonalizationReportingEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-showmicrosoftrewards","title":"Registry Key: ShowMicrosoftRewards","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-webwidgetallowed","title":"Registry Key: WebWidgetAllowed","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-diagnosticdata","title":"Registry Key: DiagnosticData","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgeassetdeliveryserviceenabled","title":"Registry Key: EdgeAssetDeliveryServiceEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-edgecollectionsenabled_1","title":"Registry Key: EdgeCollectionsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-cryptowalletenabled","title":"Registry Key: CryptoWalletEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-configuredonottrack_1","title":"Registry Key: ConfigureDoNotTrack","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/EdgeDebloat/#registry-key-walletdonationenabled","title":"Registry Key: WalletDonationEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/","title":"Enable End Task With Right Click","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#description","title":"Description","text":"

                Enables option to end task when right clicking a program in the taskbar

                Preview Code
                {\n  \"Content\": \"Enable End Task With Right Click\",\n  \"Description\": \"Enables option to end task when right clicking a program in the taskbar\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a006_\",\n  \"InvokeScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"UndoScript\": [\n    \"$path = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\TaskbarDeveloperSettings\\\"\n      $name = \\\"TaskbarEndTask\\\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#invoke-script","title":"Invoke Script","text":"
                $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 1\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n
                "},{"location":"dev/tweaks/Essential-Tweaks/EndTaskOnTaskbar/#undo-script","title":"Undo Script","text":"
                $path = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\\TaskbarDeveloperSettings\"\n      $name = \"TaskbarEndTask\"\n      $value = 0\n\n      # Ensure the registry key exists\n      if (-not (Test-Path $path)) {\n        New-Item -Path $path -Force | Out-Null\n      }\n\n      # Set the property, creating it if it doesn't exist\n      New-ItemProperty -Path $path -Name $name -PropertyType DWord -Value $value -Force | Out-Null\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/","title":"Disable Hibernation","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#description","title":"Description","text":"

                Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.

                Preview Code
                {\n  \"Content\": \"Disable Hibernation\",\n  \"Description\": \"Hibernation is really meant for laptops as it saves what's in memory before turning the pc off. It really should never be used, but some people are lazy and rely on it. Don't be like Bob. Bob likes hibernation.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\System\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Power\",\n      \"Name\": \"HibernateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\FlyoutMenuSettings\",\n      \"Name\": \"ShowHibernateOption\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"powercfg.exe /hibernate off\"\n  ],\n  \"UndoScript\": [\n    \"powercfg.exe /hibernate on\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Hiber\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#invoke-script","title":"Invoke Script","text":"
                powercfg.exe /hibernate off\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#undo-script","title":"Undo Script","text":"
                powercfg.exe /hibernate on\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-hibernateenabled","title":"Registry Key: HibernateEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Hiber/#registry-key-showhibernateoption","title":"Registry Key: ShowHibernateOption","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Home/","title":"Disable Homegroup","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Home/#description","title":"Description","text":"

                Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.

                Preview Code
                {\n  \"Content\": \"Disable Homegroup\",\n  \"Description\": \"Disables HomeGroup - HomeGroup is a password-protected home networking service that lets you share your stuff with other PCs that are currently running and connected to your network.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"service\": [\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Home\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-changes","title":"Service Changes","text":"

                Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

                You can find information about services on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Home/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

                Startup Type: Manual

                Original Type: Automatic

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/","title":"Prefer IPv4 over IPv6","text":"

                Last Updated: 2024-08-27

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/#description","title":"Description","text":"

                To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.

                Preview Code
                {\n  \"Content\": \"Prefer IPv4 over IPv6\",\n  \"Description\": \"To set the IPv4 preference can have latency and security benefits on private networks where IPv6 is not configured.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"32\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/IPv46\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/IPv46/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

                Type: DWord

                Original Value: 0

                New Value: 32

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/","title":"Set Hibernation as default (good for laptops)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#description","title":"Description","text":"

                Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399

                Preview Code
                {\n  \"Content\": \"Set Hibernation as default (good for laptops)\",\n  \"Description\": \"Most modern laptops have connected standby enabled which drains the battery, this sets hibernation as default which will not drain the battery. See issue https://github.com/ChrisTitusTech/winutil/issues/1399\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\\\\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Attributes\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Power\\\\PowerSettings\\\\abfc2519-3608-4c2a-94ea-171b0ed546ab\\\\94ac6d29-73ce-41a6-809f-6363ba21b47e\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Attributes \",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Turn on Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate on\\\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 60\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 10\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 1\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Turn off Hibernation\\\"\n      Start-Process -FilePath powercfg -ArgumentList \\\"/hibernate off\\\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change standby-timeout-dc 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-ac 15\\\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \\\"/change monitor-timeout-dc 15\\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/LaptopHibernation\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#invoke-script","title":"Invoke Script","text":"
                      Write-Host \"Turn on Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate on\" -NoNewWindow -Wait\n\n      # Set hibernation as the default action\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 60\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 10\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 1\" -NoNewWindow -Wait\n
                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#undo-script","title":"Undo Script","text":"
                      Write-Host \"Turn off Hibernation\"\n      Start-Process -FilePath powercfg -ArgumentList \"/hibernate off\" -NoNewWindow -Wait\n\n      # Set standby to detault values\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change standby-timeout-dc 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-ac 15\" -NoNewWindow -Wait\n      Start-Process -FilePath powercfg -ArgumentList \"/change monitor-timeout-dc 15\" -NoNewWindow -Wait\n
                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes","title":"Registry Key: Attributes","text":"

                Type: DWord

                Original Value: 1

                New Value: 2

                "},{"location":"dev/tweaks/Essential-Tweaks/LaptopHibernation/#registry-key-attributes_1","title":"Registry Key: Attributes","text":"

                Type: DWord

                Original Value: 0

                New Value: 2

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/","title":"Disable Location Tracking","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#description","title":"Description","text":"

                Disables Location Tracking...DUH!

                Preview Code
                {\n  \"Content\": \"Disable Location Tracking\",\n  \"Description\": \"Disables Location Tracking...DUH!\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\CapabilityAccessManager\\\\ConsentStore\\\\location\",\n      \"Name\": \"Value\",\n      \"Type\": \"String\",\n      \"Value\": \"Deny\",\n      \"OriginalValue\": \"Allow\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Sensor\\\\Overrides\\\\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}\",\n      \"Name\": \"SensorPermissionState\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\lfsvc\\\\Service\\\\Configuration\",\n      \"Name\": \"Status\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\Maps\",\n      \"Name\": \"AutoUpdateEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Loc\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-value","title":"Registry Key: Value","text":"

                Type: String

                Original Value: Allow

                New Value: Deny

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-sensorpermissionstate","title":"Registry Key: SensorPermissionState","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-status","title":"Registry Key: Status","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Loc/#registry-key-autoupdateenabled","title":"Registry Key: AutoUpdateEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/","title":"Change Windows Terminal default: PowerShell 5 -> PowerShell 7","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#description","title":"Description","text":"

                This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary

                Preview Code
                {\n  \"Content\": \"Change Windows Terminal default: PowerShell 5 -> PowerShell 7\",\n  \"Description\": \"This will edit the config file of the Windows Terminal replacing PowerShell 5 with PowerShell 7 and installing PS7 if necessary\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS7\\\"\"\n  ],\n  \"UndoScript\": [\n    \"Invoke-WPFTweakPS7 -action \\\"PS5\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#invoke-script","title":"Invoke Script","text":"
                Invoke-WPFTweakPS7 -action \"PS7\"\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#undo-script","title":"Undo Script","text":"
                Invoke-WPFTweakPS7 -action \"PS5\"\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-wpftweakps7","title":"Function: Invoke-WPFTweakPS7","text":"
                function Invoke-WPFTweakPS7{\n        <#\n    .SYNOPSIS\n        This will edit the config file of the Windows Terminal Replacing the Powershell 5 to Powershell 7 and install Powershell 7 if necessary\n    .PARAMETER action\n        PS7:           Configures Powershell 7 to be the default Terminal\n        PS5:           Configures Powershell 5 to be the default Terminal\n    #>\n    param (\n        [ValidateSet(\"PS7\", \"PS5\")]\n        [string]$action\n    )\n\n    switch ($action) {\n        \"PS7\"{\n            if (Test-Path -Path \"$env:ProgramFiles\\PowerShell\\7\") {\n                Write-Host \"Powershell 7 is already installed.\"\n            } else {\n                Write-Host \"Installing Powershell 7...\"\n                Invoke-WinUtilWingetProgram -Action Install -Programs @(\"Microsoft.PowerShell\")\n            }\n            $targetTerminalName = \"PowerShell\"\n        }\n        \"PS5\"{\n            $targetTerminalName = \"Windows PowerShell\"\n        }\n    }\n    # Check if the Windows Terminal is installed and return if not (Prerequisite for the following code)\n    if (-not (Get-Command \"wt\" -ErrorAction SilentlyContinue)) {\n        Write-Host \"Windows Terminal not installed. Skipping Terminal preference\"\n        return\n    }\n    # Check if the Windows Terminal settings.json file exists and return if not (Prereqisite for the following code)\n    $settingsPath = \"$env:LOCALAPPDATA\\Packages\\Microsoft.WindowsTerminal_8wekyb3d8bbwe\\LocalState\\settings.json\"\n    if (-not (Test-Path -Path $settingsPath)) {\n        Write-Host \"Windows Terminal Settings file not found at $settingsPath\"\n        return\n    }\n\n    Write-Host \"Settings file found.\"\n    $settingsContent = Get-Content -Path $settingsPath | ConvertFrom-Json\n    $ps7Profile = $settingsContent.profiles.list | Where-Object { $_.name -eq $targetTerminalName }\n    if ($ps7Profile) {\n        $settingsContent.defaultProfile = $ps7Profile.guid\n        $updatedSettings = $settingsContent | ConvertTo-Json -Depth 100\n        Set-Content -Path $settingsPath -Value $updatedSettings\n        Write-Host \"Default profile updated to \" -NoNewline\n        Write-Host \"$targetTerminalName \" -ForegroundColor White -NoNewline\n        Write-Host \"using the name attribute.\"\n    } else {\n        Write-Host \"No PowerShell 7 profile found in Windows Terminal settings using the name attribute.\"\n    }\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-invoke-winutilwingetprogram","title":"Function: Invoke-WinUtilWingetProgram","text":"
                Function Invoke-WinUtilWingetProgram {\n    <#\n    .SYNOPSIS\n    Runs the designated action on the provided programs using Winget\n\n    .PARAMETER Programs\n    A list of programs to process\n\n    .PARAMETER action\n    The action to perform on the programs, can be either 'Install' or 'Uninstall'\n\n    .NOTES\n    The triple quotes are required any time you need a \" in a normal script block.\n    The winget Return codes are documented here: https://github.com/microsoft/winget-cli/blob/master/doc/windows/package-actionr/winget/returnCodes.md\n    #>\n\n    param(\n        [Parameter(Mandatory, Position=0)]$Programs,\n\n        [Parameter(Mandatory, Position=1)]\n        [ValidateSet(\"Install\", \"Uninstall\")]\n        [String]$Action\n    )\n\n    Function Invoke-Winget {\n    <#\n    .SYNOPSIS\n    Invokes the winget.exe with the provided arguments and return the exit code\n\n    .PARAMETER wingetId\n    The Id of the Program that Winget should Install/Uninstall\n\n    .PARAMETER scope\n    Determines the installation mode. Can be \"user\" or \"machine\" (For more info look at the winget documentation)\n\n    .PARAMETER credential\n    The PSCredential Object of the user that should be used to run winget\n\n    .NOTES\n    Invoke Winget uses the public variable $Action defined outside the function to determine if a Program should be installed or removed\n    #>\n        param (\n            [string]$wingetId,\n            [string]$scope = \"\",\n            [PScredential]$credential = $null\n        )\n\n        $commonArguments = \"--id $wingetId --silent\"\n        $arguments = if ($Action -eq \"Install\") {\n            \"install $commonArguments --accept-source-agreements --accept-package-agreements $(if ($scope) {\" --scope $scope\"})\"\n        } else {\n            \"uninstall $commonArguments\"\n        }\n\n        $processParams = @{\n            FilePath = \"winget\"\n            ArgumentList = $arguments\n            Wait = $true\n            PassThru = $true\n            NoNewWindow = $true\n        }\n\n        if ($credential) {\n            $processParams.credential = $credential\n        }\n\n        return (Start-Process @processParams).ExitCode\n    }\n\n    Function Invoke-Install {\n    <#\n    .SYNOPSIS\n    Contains the Install Logic and return code handling from winget\n\n    .PARAMETER Program\n    The Winget ID of the Program that should be installed\n    #>\n        param (\n            [string]$Program\n        )\n        $status = Invoke-Winget -wingetId $Program\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        Write-Host \"Attempt installation of $($Program) with User scope\"\n        $status = Invoke-Winget -wingetId $Program -scope \"user\"\n        if ($status -eq 0) {\n            Write-Host \"$($Program) installed successfully with User scope.\"\n            return $true\n        } elseif ($status -eq -1978335189) {\n            Write-Host \"$($Program) No applicable update found\"\n            return $true\n        }\n\n        $userChoice = [System.Windows.MessageBox]::Show(\"Do you want to attempt $($Program) installation with specific user credentials? Select 'Yes' to proceed or 'No' to skip.\", \"User credential Prompt\", [System.Windows.MessageBoxButton]::YesNo)\n        if ($userChoice -eq 'Yes') {\n            $getcreds = Get-Credential\n            $status = Invoke-Winget -wingetId $Program -credential $getcreds\n            if ($status -eq 0) {\n                Write-Host \"$($Program) installed successfully with User prompt.\"\n                return $true\n            }\n        } else {\n            Write-Host \"Skipping installation with specific user credentials.\"\n        }\n\n        Write-Host \"Failed to install $($Program).\"\n        return $false\n    }\n\n    Function Invoke-Uninstall {\n        <#\n        .SYNOPSIS\n        Contains the Uninstall Logic and return code handling from winget\n\n        .PARAMETER Program\n        The Winget ID of the Program that should be uninstalled\n        #>\n        param (\n            [psobject]$Program\n        )\n\n        try {\n            $status = Invoke-Winget -wingetId $Program\n            if ($status -eq 0) {\n                Write-Host \"$($Program) uninstalled successfully.\"\n                return $true\n            } else {\n                Write-Host \"Failed to uninstall $($Program).\"\n                return $false\n            }\n        } catch {\n            Write-Host \"Failed to uninstall $($Program) due to an error: $_\"\n            return $false\n        }\n    }\n\n    $count = $Programs.Count\n    $failedPackages = @()\n\n    Write-Host \"===========================================\"\n    Write-Host \"--    Configuring winget packages       ---\"\n    Write-Host \"===========================================\"\n\n    for ($i = 0; $i -lt $count; $i++) {\n        $Program = $Programs[$i]\n        $result = $false\n        Set-WinUtilProgressBar -label \"$Action $($Program)\" -percent ($i / $count * 100)\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i / $count)})\n\n        $result = switch ($Action) {\n            \"Install\" {Invoke-Install -Program $Program}\n            \"Uninstall\" {Invoke-Uninstall -Program $Program}\n            default {throw \"[Install-WinUtilProgramWinget] Invalid action: $Action\"}\n        }\n\n        if (-not $result) {\n            $failedPackages += $Program\n        }\n    }\n\n    Set-WinUtilProgressBar -label \"$($Action)ation done\" -percent 100\n    return $failedPackages\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutilprogressbar","title":"Function: Set-WinUtilProgressbar","text":"
                function Set-WinUtilProgressbar{\n    <#\n    .SYNOPSIS\n        This function is used to Update the Progress Bar displayed in the winutil GUI.\n        It will be automatically hidden if the user clicks something and no process is running\n    .PARAMETER Label\n        The Text to be overlayed onto the Progress Bar\n    .PARAMETER PERCENT\n        The percentage of the Progress Bar that should be filled (0-100)\n    .PARAMETER Hide\n        If provided, the Progress Bar and the label will be hidden\n    #>\n    param(\n        [string]$Label,\n        [ValidateRange(0,100)]\n        [int]$Percent,\n        $Hide\n    )\n    if ($hide) {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Collapsed\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Collapsed\"})\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Visibility = \"Visible\"})\n        $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBar.Visibility = \"Visible\"})\n    }\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.Text = $label})\n    $sync.form.Dispatcher.Invoke([action]{$sync.ProgressBarLabel.Content.ToolTip = $label})\n    $sync.form.Dispatcher.Invoke([action]{ $sync.ProgressBar.Value = $percent})\n\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7/#function-set-winutiltaskbaritem","title":"Function: Set-WinUtilTaskbarItem","text":"
                function Set-WinUtilTaskbaritem {\n    <#\n\n    .SYNOPSIS\n        Modifies the Taskbaritem of the WPF Form\n\n    .PARAMETER value\n        Value can be between 0 and 1, 0 being no progress done yet and 1 being fully completed\n        Value does not affect item without setting the state to 'Normal', 'Error' or 'Paused'\n        Set-WinUtilTaskbaritem -value 0.5\n\n    .PARAMETER state\n        State can be 'None' > No progress, 'Indeterminate' > inf. loading gray, 'Normal' > Gray, 'Error' > Red, 'Paused' > Yellow\n        no value needed:\n        - Set-WinUtilTaskbaritem -state \"None\"\n        - Set-WinUtilTaskbaritem -state \"Indeterminate\"\n        value needed:\n        - Set-WinUtilTaskbaritem -state \"Error\"\n        - Set-WinUtilTaskbaritem -state \"Normal\"\n        - Set-WinUtilTaskbaritem -state \"Paused\"\n\n    .PARAMETER overlay\n        Overlay icon to display on the taskbar item, there are the presets 'None', 'logo' and 'checkmark' or you can specify a path/link to an image file.\n        CTT logo preset:\n        - Set-WinUtilTaskbaritem -overlay \"logo\"\n        Checkmark preset:\n        - Set-WinUtilTaskbaritem -overlay \"checkmark\"\n        Warning preset:\n        - Set-WinUtilTaskbaritem -overlay \"warning\"\n        No overlay:\n        - Set-WinUtilTaskbaritem -overlay \"None\"\n        Custom icon (needs to be supported by WPF):\n        - Set-WinUtilTaskbaritem -overlay \"C:\\path\\to\\icon.png\"\n\n    .PARAMETER description\n        Description to display on the taskbar item preview\n        Set-WinUtilTaskbaritem -description \"This is a description\"\n    #>\n    param (\n        [string]$state,\n        [double]$value,\n        [string]$overlay,\n        [string]$description\n    )\n\n    if ($value) {\n        $sync[\"Form\"].taskbarItemInfo.ProgressValue = $value\n    }\n\n    if ($state) {\n        switch ($state) {\n            'None' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"None\" }\n            'Indeterminate' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Indeterminate\" }\n            'Normal' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Normal\" }\n            'Error' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Error\" }\n            'Paused' { $sync[\"Form\"].taskbarItemInfo.ProgressState = \"Paused\" }\n            default { throw \"[Set-WinUtilTaskbarItem] Invalid state\" }\n        }\n    }\n\n    if ($overlay) {\n        switch ($overlay) {\n            'logo' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\cttlogo.png\"\n            }\n            'checkmark' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\checkmark.png\"\n            }\n            'warning' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = \"$env:LOCALAPPDATA\\winutil\\warning.png\"\n            }\n            'None' {\n                $sync[\"Form\"].taskbarItemInfo.Overlay = $null\n            }\n            default {\n                if (Test-Path $overlay) {\n                    $sync[\"Form\"].taskbarItemInfo.Overlay = $overlay\n                }\n            }\n        }\n    }\n\n    if ($description) {\n        $sync[\"Form\"].taskbarItemInfo.Description = $description\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/","title":"Disable Powershell 7 Telemetry","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#description","title":"Description","text":"

                This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.

                Preview Code
                {\n  \"Content\": \"Disable Powershell 7 Telemetry\",\n  \"Description\": \"This will create an Environment Variable called 'POWERSHELL_TELEMETRY_OPTOUT' with a value of '1' which will tell Powershell 7 to not send Telemetry Data.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a009_\",\n  \"InvokeScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\"\n  ],\n  \"UndoScript\": [\n    \"[Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Powershell7Tele\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#invoke-script","title":"Invoke Script","text":"
                [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '1', 'Machine')\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Powershell7Tele/#undo-script","title":"Undo Script","text":"
                [Environment]::SetEnvironmentVariable('POWERSHELL_TELEMETRY_OPTOUT', '', 'Machine')\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/","title":"Create Restore Point","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#description","title":"Description","text":"

                Creates a restore point at runtime in case a revert is needed from WinUtil modifications

                Preview Code
                {\n  \"Content\": \"Create Restore Point\",\n  \"Description\": \"Creates a restore point at runtime in case a revert is needed from WinUtil modifications\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Checked\": \"False\",\n  \"Order\": \"a001_\",\n  \"InvokeScript\": [\n    \"\n        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \\\"Please run this script as an administrator.\\\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \\\"$env:SystemDrive\\\"\n        } catch {\n            Write-Host \\\"An error occurred while enabling System Restore: $_\\\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\SystemRestore\\\" -Name \\\"SystemRestorePointCreationFrequency\\\" -Value \\\"0\\\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \\\"Failed to load the Microsoft.PowerShell.Management module: $_\\\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \\\"Failed to retrieve restore points: $_\\\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \\\"System Restore Point created by WinUtil\\\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \\\"MODIFY_SETTINGS\\\"\n            Write-Host -ForegroundColor Green \\\"System Restore Point Created Successfully\\\"\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/RestorePoint\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/RestorePoint/#invoke-script","title":"Invoke Script","text":"
                        # Check if the user has administrative privileges\n        if (-Not ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {\n            Write-Host \"Please run this script as an administrator.\"\n            return\n        }\n\n        # Check if System Restore is enabled for the main drive\n        try {\n            # Try getting restore points to check if System Restore is enabled\n            Enable-ComputerRestore -Drive \"$env:SystemDrive\"\n        } catch {\n            Write-Host \"An error occurred while enabling System Restore: $_\"\n        }\n\n        # Check if the SystemRestorePointCreationFrequency value exists\n        $exists = Get-ItemProperty -path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -ErrorAction SilentlyContinue\n        if($null -eq $exists) {\n            write-host 'Changing system to allow multiple restore points per day'\n            Set-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\SystemRestore\" -Name \"SystemRestorePointCreationFrequency\" -Value \"0\" -Type DWord -Force -ErrorAction Stop | Out-Null\n        }\n\n        # Attempt to load the required module for Get-ComputerRestorePoint\n        try {\n            Import-Module Microsoft.PowerShell.Management -ErrorAction Stop\n        } catch {\n            Write-Host \"Failed to load the Microsoft.PowerShell.Management module: $_\"\n            return\n        }\n\n        # Get all the restore points for the current day\n        try {\n            $existingRestorePoints = Get-ComputerRestorePoint | Where-Object { $_.CreationTime.Date -eq (Get-Date).Date }\n        } catch {\n            Write-Host \"Failed to retrieve restore points: $_\"\n            return\n        }\n\n        # Check if there is already a restore point created today\n        if ($existingRestorePoints.Count -eq 0) {\n            $description = \"System Restore Point created by WinUtil\"\n\n            Checkpoint-Computer -Description $description -RestorePointType \"MODIFY_SETTINGS\"\n            Write-Host -ForegroundColor Green \"System Restore Point Created Successfully\"\n        }\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/","title":"Set Services to Manual","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#description","title":"Description","text":"

                Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.

                Preview Code
                {\n  \"Content\": \"Set Services to Manual\",\n  \"Description\": \"Turns a bunch of system services to manual that don't need to be running all the time. This is pretty harmless as if the service is needed, it will simply start on demand.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a014_\",\n  \"service\": [\n    {\n      \"Name\": \"AJRouter\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ALG\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppIDSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppMgmt\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppReadiness\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AppVClient\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"AppXSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Appinfo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AssignedAccessManagerSvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"AudioEndpointBuilder\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AudioSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Audiosrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AxInstSV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BDESVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BFE\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BITS\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BTAGService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BcastDVRUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BluetoothUserService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BrokerInfrastructure\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Browser\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"BthAvctpSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"BthHFSrv\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CDPUserSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"COMSysApp\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CaptureService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CertPropSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ClipSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ConsentUxUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CoreMessagingRegistrar\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CredentialEnrollmentManagerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"CryptSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CscService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DPS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcomLaunch\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DcpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevQueryBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationBrokerSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceAssociationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DeviceInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicePickerUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DevicesFlowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dhcp\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DiagTrack\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DialogBlockingService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"DispBrokerDesktopSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DisplayEnhancementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DmEnrollmentSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Dnscache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DoSvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"DsSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DsmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"DusmSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EFS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EapHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EntAppSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"EventLog\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"EventSystem\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FDResPub\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Fax\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FontCache\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"FrameServer\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"FrameServerMonitor\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"GraphicsPerfSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupListener\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HomeGroupProvider\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"HvHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IEEtwCollectorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IKEEXT\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InstallService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"InventorySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"IpxlatCfgSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"KeyIso\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"KtmRm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LSM\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanServer\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LanmanWorkstation\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"LicenseManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"LxpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSDTC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MSiSCSI\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MapsBroker\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"McpManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MessagingService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MicrosoftEdgeElevationService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MixedRealityOpenXRSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"MpsSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"MsKeyboardFilter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"NPSMSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NaturalAuthentication\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcbService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NcdAutoSetup\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetSetupSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NetTcpPortSharing\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"Netlogon\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Netman\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcCtnrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NgcSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"NlaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"OneSyncSvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"P9RdrService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPAutoReg\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PNRPsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PcaSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PeerDistSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PenService_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PerfHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PhoneSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PimIndexMaintenanceSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PlugPlay\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PolicyAgent\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Power\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PrintNotify\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"PrintWorkflowUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ProfSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"PushToInstall\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"QWAVE\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasAuto\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RasMan\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RemoteAccess\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RemoteRegistry\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"RetailDemo\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RmSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcEptMapper\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"RpcLocator\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"RpcSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SCPolicySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SCardSvr\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SDRSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SEMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SENS\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SNMPTRAP\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SNMPTrap\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SSDPSRV\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SamSs\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ScDeviceEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Schedule\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SecurityHealthService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Sense\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorDataService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensorService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SensrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SessionEnv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SgrmBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SharedAccess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"SharedRealitySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"ShellHWDetection\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SmsRouter\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Spooler\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SstpSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StateRepository\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"StiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"StorSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SysMain\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"SystemEventsBroker\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TabletInputService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TapiSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TermService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TextInputManagementService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Themes\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TieringEngineService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TimeBrokerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TokenBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrkWks\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"TroubleshootingSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"TrustedInstaller\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UI0Detect\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UdkUserSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UevAgentService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"UmRdpService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UnistoreSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserDataSvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"UserManager\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"UsoSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VGAuthService\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VMTools\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"VSS\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VacSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"VaultSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"W32Time\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WEPHOSTSVC\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WFDSConMgrSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WMPNetworkSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WManSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WPDBusEnum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WSearch\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WaaSMedicSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WalletService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WarpJITSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WbioSrvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wcmsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WcsPlugInService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdNisSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiServiceHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WdiSystemHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WebClient\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Wecsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WerSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WiaRpc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinDefend\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WinHttpAutoProxySvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WinRM\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"Winmgmt\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WlanSvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpcMonSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"WpnService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"WpnUserService_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"XblAuthManager\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XblGameSave\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxGipSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"XboxNetApiSvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"autotimesvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"bthserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"camsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"cbdhsvc_*\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"cloudidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dcsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"defragsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagnosticshub.standardcollector.service\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"diagsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dmwappushservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"dot3svc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"edgeupdate\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"edgeupdatem\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"embeddedmode\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fdPHost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"fhsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"gpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"hidserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"icssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"iphlpsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"lfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lltdsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"lmhosts\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"mpssvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"msiserver\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"netprofm\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"nsi\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"p2pimsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"p2psvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"perceptionsimulation\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"pla\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"seclogon\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"shpamsvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"smphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"spectrum\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"sppsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"ssh-agent\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"svsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"swprv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"tiledatamodelsvc\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"tzautoupdate\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"uhssvc\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Disabled\"\n    },\n    {\n      \"Name\": \"upnphost\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vds\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vm3dservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"vmicguestinterface\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicheartbeat\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmickvpexchange\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicrdv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicshutdown\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmictimesync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvmsession\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmicvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"vmvss\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wbengine\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wcncsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"webthreatdefusersvc_*\",\n      \"StartupType\": \"Automatic\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wercplsupport\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wisvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlidsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wlpasvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wmiApSrv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"workfolderssvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wscsvc\",\n      \"StartupType\": \"AutomaticDelayedStart\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"wuauserv\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    },\n    {\n      \"Name\": \"wudfsvc\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Manual\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Services\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-changes","title":"Service Changes","text":"

                Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

                You can find information about services on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ajrouter","title":"Service Name: AJRouter","text":"

                Startup Type: Disabled

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-alg","title":"Service Name: ALG","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appidsvc","title":"Service Name: AppIDSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appmgmt","title":"Service Name: AppMgmt","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appreadiness","title":"Service Name: AppReadiness","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appvclient","title":"Service Name: AppVClient","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appxsvc","title":"Service Name: AppXSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-appinfo","title":"Service Name: Appinfo","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-assignedaccessmanagersvc","title":"Service Name: AssignedAccessManagerSvc","text":"

                Startup Type: Disabled

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audioendpointbuilder","title":"Service Name: AudioEndpointBuilder","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv","title":"Service Name: AudioSrv","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-audiosrv_1","title":"Service Name: Audiosrv","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-axinstsv","title":"Service Name: AxInstSV","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bdesvc","title":"Service Name: BDESVC","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bfe","title":"Service Name: BFE","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bits","title":"Service Name: BITS","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-btagservice","title":"Service Name: BTAGService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bcastdvruserservice_","title":"Service Name: BcastDVRUserService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bluetoothuserservice_","title":"Service Name: BluetoothUserService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-brokerinfrastructure","title":"Service Name: BrokerInfrastructure","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-browser","title":"Service Name: Browser","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthavctpsvc","title":"Service Name: BthAvctpSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthhfsrv","title":"Service Name: BthHFSrv","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpsvc","title":"Service Name: CDPSvc","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cdpusersvc_","title":"Service Name: CDPUserSvc_*","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-comsysapp","title":"Service Name: COMSysApp","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-captureservice_","title":"Service Name: CaptureService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-certpropsvc","title":"Service Name: CertPropSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-clipsvc","title":"Service Name: ClipSVC","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-consentuxusersvc_","title":"Service Name: ConsentUxUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-coremessagingregistrar","title":"Service Name: CoreMessagingRegistrar","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-credentialenrollmentmanagerusersvc_","title":"Service Name: CredentialEnrollmentManagerUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cryptsvc","title":"Service Name: CryptSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cscservice","title":"Service Name: CscService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dps","title":"Service Name: DPS","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcomlaunch","title":"Service Name: DcomLaunch","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcpsvc","title":"Service Name: DcpSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devquerybroker","title":"Service Name: DevQueryBroker","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationbrokersvc_","title":"Service Name: DeviceAssociationBrokerSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceassociationservice","title":"Service Name: DeviceAssociationService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-deviceinstall","title":"Service Name: DeviceInstall","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicepickerusersvc_","title":"Service Name: DevicePickerUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-devicesflowusersvc_","title":"Service Name: DevicesFlowUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dhcp","title":"Service Name: Dhcp","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagtrack","title":"Service Name: DiagTrack","text":"

                Startup Type: Disabled

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dialogblockingservice","title":"Service Name: DialogBlockingService","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dispbrokerdesktopsvc","title":"Service Name: DispBrokerDesktopSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-displayenhancementservice","title":"Service Name: DisplayEnhancementService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmenrollmentsvc","title":"Service Name: DmEnrollmentSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dnscache","title":"Service Name: Dnscache","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dosvc","title":"Service Name: DoSvc","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dssvc","title":"Service Name: DsSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dsmsvc","title":"Service Name: DsmSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dusmsvc","title":"Service Name: DusmSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-efs","title":"Service Name: EFS","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eaphost","title":"Service Name: EapHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-entappsvc","title":"Service Name: EntAppSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventlog","title":"Service Name: EventLog","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-eventsystem","title":"Service Name: EventSystem","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdrespub","title":"Service Name: FDResPub","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fax","title":"Service Name: Fax","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fontcache","title":"Service Name: FontCache","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameserver","title":"Service Name: FrameServer","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-frameservermonitor","title":"Service Name: FrameServerMonitor","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-graphicsperfsvc","title":"Service Name: GraphicsPerfSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegrouplistener","title":"Service Name: HomeGroupListener","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-homegroupprovider","title":"Service Name: HomeGroupProvider","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hvhost","title":"Service Name: HvHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ieetwcollectorservice","title":"Service Name: IEEtwCollectorService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ikeext","title":"Service Name: IKEEXT","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-installservice","title":"Service Name: InstallService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-inventorysvc","title":"Service Name: InventorySvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ipxlatcfgsvc","title":"Service Name: IpxlatCfgSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-keyiso","title":"Service Name: KeyIso","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ktmrm","title":"Service Name: KtmRm","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lsm","title":"Service Name: LSM","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanserver","title":"Service Name: LanmanServer","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lanmanworkstation","title":"Service Name: LanmanWorkstation","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-licensemanager","title":"Service Name: LicenseManager","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lxpsvc","title":"Service Name: LxpSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msdtc","title":"Service Name: MSDTC","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiscsi","title":"Service Name: MSiSCSI","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mapsbroker","title":"Service Name: MapsBroker","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mcpmanagementservice","title":"Service Name: McpManagementService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-messagingservice_","title":"Service Name: MessagingService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-microsoftedgeelevationservice","title":"Service Name: MicrosoftEdgeElevationService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mixedrealityopenxrsvc","title":"Service Name: MixedRealityOpenXRSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc","title":"Service Name: MpsSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mskeyboardfilter","title":"Service Name: MsKeyboardFilter","text":"

                Startup Type: Manual

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-npsmsvc_","title":"Service Name: NPSMSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-naturalauthentication","title":"Service Name: NaturalAuthentication","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncasvc","title":"Service Name: NcaSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncbservice","title":"Service Name: NcbService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ncdautosetup","title":"Service Name: NcdAutoSetup","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netsetupsvc","title":"Service Name: NetSetupSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nettcpportsharing","title":"Service Name: NetTcpPortSharing","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netlogon","title":"Service Name: Netlogon","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netman","title":"Service Name: Netman","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcctnrsvc","title":"Service Name: NgcCtnrSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ngcsvc","title":"Service Name: NgcSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nlasvc","title":"Service Name: NlaSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-onesyncsvc_","title":"Service Name: OneSyncSvc_*","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p9rdrservice_","title":"Service Name: P9RdrService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpautoreg","title":"Service Name: PNRPAutoReg","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pnrpsvc","title":"Service Name: PNRPsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pcasvc","title":"Service Name: PcaSvc","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-peerdistsvc","title":"Service Name: PeerDistSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-penservice_","title":"Service Name: PenService_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perfhost","title":"Service Name: PerfHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-phonesvc","title":"Service Name: PhoneSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pimindexmaintenancesvc_","title":"Service Name: PimIndexMaintenanceSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-plugplay","title":"Service Name: PlugPlay","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-policyagent","title":"Service Name: PolicyAgent","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-power","title":"Service Name: Power","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printnotify","title":"Service Name: PrintNotify","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-printworkflowusersvc_","title":"Service Name: PrintWorkflowUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-profsvc","title":"Service Name: ProfSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pushtoinstall","title":"Service Name: PushToInstall","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-qwave","title":"Service Name: QWAVE","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasauto","title":"Service Name: RasAuto","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rasman","title":"Service Name: RasMan","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteaccess","title":"Service Name: RemoteAccess","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-remoteregistry","title":"Service Name: RemoteRegistry","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-retaildemo","title":"Service Name: RetailDemo","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rmsvc","title":"Service Name: RmSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpceptmapper","title":"Service Name: RpcEptMapper","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpclocator","title":"Service Name: RpcLocator","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-rpcss","title":"Service Name: RpcSs","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scpolicysvc","title":"Service Name: SCPolicySvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scardsvr","title":"Service Name: SCardSvr","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sdrsvc","title":"Service Name: SDRSVC","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-semgrsvc","title":"Service Name: SEMgrSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sens","title":"Service Name: SENS","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap","title":"Service Name: SNMPTRAP","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-snmptrap_1","title":"Service Name: SNMPTrap","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssdpsrv","title":"Service Name: SSDPSRV","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-samss","title":"Service Name: SamSs","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-scdeviceenum","title":"Service Name: ScDeviceEnum","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-schedule","title":"Service Name: Schedule","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-securityhealthservice","title":"Service Name: SecurityHealthService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sense","title":"Service Name: Sense","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensordataservice","title":"Service Name: SensorDataService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensorservice","title":"Service Name: SensorService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sensrsvc","title":"Service Name: SensrSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sessionenv","title":"Service Name: SessionEnv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sgrmbroker","title":"Service Name: SgrmBroker","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedaccess","title":"Service Name: SharedAccess","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sharedrealitysvc","title":"Service Name: SharedRealitySvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shellhwdetection","title":"Service Name: ShellHWDetection","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smsrouter","title":"Service Name: SmsRouter","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spooler","title":"Service Name: Spooler","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sstpsvc","title":"Service Name: SstpSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-staterepository","title":"Service Name: StateRepository","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-stisvc","title":"Service Name: StiSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-storsvc","title":"Service Name: StorSvc","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sysmain","title":"Service Name: SysMain","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-systemeventsbroker","title":"Service Name: SystemEventsBroker","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tabletinputservice","title":"Service Name: TabletInputService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tapisrv","title":"Service Name: TapiSrv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-termservice","title":"Service Name: TermService","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-textinputmanagementservice","title":"Service Name: TextInputManagementService","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-themes","title":"Service Name: Themes","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tieringengineservice","title":"Service Name: TieringEngineService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebroker","title":"Service Name: TimeBroker","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-timebrokersvc","title":"Service Name: TimeBrokerSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tokenbroker","title":"Service Name: TokenBroker","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trkwks","title":"Service Name: TrkWks","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-troubleshootingsvc","title":"Service Name: TroubleshootingSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-trustedinstaller","title":"Service Name: TrustedInstaller","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ui0detect","title":"Service Name: UI0Detect","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-udkusersvc_","title":"Service Name: UdkUserSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uevagentservice","title":"Service Name: UevAgentService","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-umrdpservice","title":"Service Name: UmRdpService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-unistoresvc_","title":"Service Name: UnistoreSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-userdatasvc_","title":"Service Name: UserDataSvc_*","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usermanager","title":"Service Name: UserManager","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-usosvc","title":"Service Name: UsoSvc","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vgauthservice","title":"Service Name: VGAuthService","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmtools","title":"Service Name: VMTools","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vss","title":"Service Name: VSS","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vacsvc","title":"Service Name: VacSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vaultsvc","title":"Service Name: VaultSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-w32time","title":"Service Name: W32Time","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wephostsvc","title":"Service Name: WEPHOSTSVC","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wfdsconmgrsvc","title":"Service Name: WFDSConMgrSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmpnetworksvc","title":"Service Name: WMPNetworkSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmansvc","title":"Service Name: WManSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpdbusenum","title":"Service Name: WPDBusEnum","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsservice","title":"Service Name: WSService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wsearch","title":"Service Name: WSearch","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-waasmedicsvc","title":"Service Name: WaaSMedicSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-walletservice","title":"Service Name: WalletService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-warpjitsvc","title":"Service Name: WarpJITSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbiosrvc","title":"Service Name: WbioSrvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcmsvc","title":"Service Name: Wcmsvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcspluginservice","title":"Service Name: WcsPlugInService","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdnissvc","title":"Service Name: WdNisSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdiservicehost","title":"Service Name: WdiServiceHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wdisystemhost","title":"Service Name: WdiSystemHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webclient","title":"Service Name: WebClient","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wecsvc","title":"Service Name: Wecsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wersvc","title":"Service Name: WerSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wiarpc","title":"Service Name: WiaRpc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-windefend","title":"Service Name: WinDefend","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winhttpautoproxysvc","title":"Service Name: WinHttpAutoProxySvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winrm","title":"Service Name: WinRM","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-winmgmt","title":"Service Name: Winmgmt","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlansvc","title":"Service Name: WlanSvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpcmonsvc","title":"Service Name: WpcMonSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnservice","title":"Service Name: WpnService","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wpnuserservice_","title":"Service Name: WpnUserService_*","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblauthmanager","title":"Service Name: XblAuthManager","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xblgamesave","title":"Service Name: XblGameSave","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxgipsvc","title":"Service Name: XboxGipSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-xboxnetapisvc","title":"Service Name: XboxNetApiSvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-autotimesvc","title":"Service Name: autotimesvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-bthserv","title":"Service Name: bthserv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-camsvc","title":"Service Name: camsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cbdhsvc_","title":"Service Name: cbdhsvc_*","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-cloudidsvc","title":"Service Name: cloudidsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dcsvc","title":"Service Name: dcsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-defragsvc","title":"Service Name: defragsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagnosticshubstandardcollectorservice","title":"Service Name: diagnosticshub.standardcollector.service","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-diagsvc","title":"Service Name: diagsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dmwappushservice","title":"Service Name: dmwappushservice","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-dot3svc","title":"Service Name: dot3svc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdate","title":"Service Name: edgeupdate","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-edgeupdatem","title":"Service Name: edgeupdatem","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-embeddedmode","title":"Service Name: embeddedmode","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fdphost","title":"Service Name: fdPHost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-fhsvc","title":"Service Name: fhsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-gpsvc","title":"Service Name: gpsvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-hidserv","title":"Service Name: hidserv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-icssvc","title":"Service Name: icssvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-iphlpsvc","title":"Service Name: iphlpsvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lfsvc","title":"Service Name: lfsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lltdsvc","title":"Service Name: lltdsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-lmhosts","title":"Service Name: lmhosts","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-mpssvc_1","title":"Service Name: mpssvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-msiserver","title":"Service Name: msiserver","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-netprofm","title":"Service Name: netprofm","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-nsi","title":"Service Name: nsi","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2pimsvc","title":"Service Name: p2pimsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-p2psvc","title":"Service Name: p2psvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-perceptionsimulation","title":"Service Name: perceptionsimulation","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-pla","title":"Service Name: pla","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-seclogon","title":"Service Name: seclogon","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-shpamsvc","title":"Service Name: shpamsvc","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-smphost","title":"Service Name: smphost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-spectrum","title":"Service Name: spectrum","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-sppsvc","title":"Service Name: sppsvc","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-ssh-agent","title":"Service Name: ssh-agent","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-svsvc","title":"Service Name: svsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-swprv","title":"Service Name: swprv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tiledatamodelsvc","title":"Service Name: tiledatamodelsvc","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-tzautoupdate","title":"Service Name: tzautoupdate","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-uhssvc","title":"Service Name: uhssvc","text":"

                Startup Type: Disabled

                Original Type: Disabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-upnphost","title":"Service Name: upnphost","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vds","title":"Service Name: vds","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vm3dservice","title":"Service Name: vm3dservice","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicguestinterface","title":"Service Name: vmicguestinterface","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicheartbeat","title":"Service Name: vmicheartbeat","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmickvpexchange","title":"Service Name: vmickvpexchange","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicrdv","title":"Service Name: vmicrdv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicshutdown","title":"Service Name: vmicshutdown","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmictimesync","title":"Service Name: vmictimesync","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvmsession","title":"Service Name: vmicvmsession","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmicvss","title":"Service Name: vmicvss","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-vmvss","title":"Service Name: vmvss","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wbengine","title":"Service Name: wbengine","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wcncsvc","title":"Service Name: wcncsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefsvc","title":"Service Name: webthreatdefsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-webthreatdefusersvc_","title":"Service Name: webthreatdefusersvc_*","text":"

                Startup Type: Automatic

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wercplsupport","title":"Service Name: wercplsupport","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wisvc","title":"Service Name: wisvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlidsvc","title":"Service Name: wlidsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wlpasvc","title":"Service Name: wlpasvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wmiapsrv","title":"Service Name: wmiApSrv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-workfolderssvc","title":"Service Name: workfolderssvc","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wscsvc","title":"Service Name: wscsvc","text":"

                Startup Type: AutomaticDelayedStart

                Original Type: Automatic

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wuauserv","title":"Service Name: wuauserv","text":"

                Startup Type: Manual

                Original Type: Manual

                "},{"location":"dev/tweaks/Essential-Tweaks/Services/#service-name-wudfsvc","title":"Service Name: wudfsvc","text":"

                Startup Type: Manual

                Original Type: Manual

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Storage/","title":"Disable Storage Sense","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#description","title":"Description","text":"

                Storage Sense deletes temp files automatically.

                Preview Code
                {\n  \"Content\": \"Disable Storage Sense\",\n  \"Description\": \"Storage Sense deletes temp files automatically.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 0 -Type Dword -Force\"\n  ],\n  \"UndoScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\StorageSense\\\\Parameters\\\\StoragePolicy\\\" -Name \\\"01\\\" -Value 1 -Type Dword -Force\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Storage\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#invoke-script","title":"Invoke Script","text":"
                Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 0 -Type Dword -Force\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Storage/#undo-script","title":"Undo Script","text":"
                Set-ItemProperty -Path \"HKCU:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\StorageSense\\Parameters\\StoragePolicy\" -Name \"01\" -Value 1 -Type Dword -Force\n

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/","title":"Disable Telemetry","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#description","title":"Description","text":"

                Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.

                Preview Code
                {\n  \"Content\": \"Disable Telemetry\",\n  \"Description\": \"Disables Microsoft Telemetry. Note: This will lock many Edge Browser settings. Microsoft spies heavily on you when using the Edge browser.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a003_\",\n  \"ScheduledTask\": [\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\Microsoft Compatibility Appraiser\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\ProgramDataUpdater\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Autochk\\\\Proxy\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\Consolidator\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Customer Experience Improvement Program\\\\UsbCeip\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\DiskDiagnostic\\\\Microsoft-Windows-DiskDiagnosticDataCollector\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClient\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Feedback\\\\Siuf\\\\DmClientOnScenarioDownload\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Windows Error Reporting\\\\QueueReporting\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\MareBackup\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\StartupAppTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Application Experience\\\\PcaPatchDbTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    },\n    {\n      \"Name\": \"Microsoft\\\\Windows\\\\Maps\\\\MapsUpdateTask\",\n      \"State\": \"Disabled\",\n      \"OriginalState\": \"Enabled\"\n    }\n  ],\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\DataCollection\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"Name\": \"AllowTelemetry\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AllowTelemetry\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ContentDeliveryAllowed\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"OemPreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PreInstalledAppsEverEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SilentInstalledAppsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338387Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338388Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-338389Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SubscribedContent-353698Enabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\ContentDeliveryManager\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemPaneSuggestionsEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Siuf\\\\Rules\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"NumberOfSIUFInPeriod\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\DataCollection\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DoNotShowFeedbackNotifications\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\CloudContent\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisableTailoredExperiencesWithDiagnosticData\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\AdvertisingInfo\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"DisabledByGroupPolicy\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\Windows Error Reporting\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"Disabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DeliveryOptimization\\\\Config\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DODownloadMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Remote Assistance\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"fAllowToGetHelp\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\OperationStatusManager\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"EnthusiastMode\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\\People\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"PeopleBand\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"LaunchTo\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\FileSystem\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"LongPathsEnabled\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"_Comment\": \"Driver searching is a function that should be left in\",\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\DriverSearching\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchOrderConfig\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SystemResponsiveness\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\\Multimedia\\\\SystemProfile\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"NetworkThrottlingIndex\",\n      \"Value\": \"4294967295\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"AutoEndTasks\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\Session Manager\\\\Memory Management\",\n      \"OriginalValue\": \"0\",\n      \"Name\": \"ClearPageFileAtShutdown\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\ControlSet001\\\\Services\\\\Ndu\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"Start\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Mouse\",\n      \"OriginalValue\": \"400\",\n      \"Name\": \"MouseHoverTime\",\n      \"Value\": \"400\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\LanmanServer\\\\Parameters\",\n      \"OriginalValue\": \"20\",\n      \"Name\": \"IRPStackSize\",\n      \"Value\": \"30\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\Windows Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableFeeds\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Feeds\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShellFeedsTaskbarViewMode\",\n      \"Value\": \"2\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Policies\\\\Explorer\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"HideSCAMeetNow\",\n      \"Value\": \"1\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\UserProfileEngagement\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ScoobeSystemSettingEnabled\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows NT\\\\CurrentVersion\\\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\TaskManager\\\" -Name \\\"Preferences\\\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\MyComputer\\\\NameSpace\\\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\\\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\") {\n            Remove-Item -Path \\\"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Edge\\\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \\\"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\" -Name \\\"SvcHostSplitThresholdInKB\\\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \\\"$env:PROGRAMDATA\\\\Microsoft\\\\Diagnosis\\\\ETLLogs\\\\AutoLogger\\\"\n        If (Test-Path \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\") {\n            Remove-Item \\\"$autoLoggerDir\\\\AutoLogger-Diagtrack-Listener.etl\\\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n        \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Tele\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#invoke-script","title":"Invoke Script","text":"
                      bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null\n        If ((get-ItemProperty -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\" -Name CurrentBuild).CurrentBuild -lt 22557) {\n            $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru\n            Do {\n                Start-Sleep -Milliseconds 100\n                $preferences = Get-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -ErrorAction SilentlyContinue\n            } Until ($preferences)\n            Stop-Process $taskmgr\n            $preferences.Preferences[28] = 0\n            Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\TaskManager\" -Name \"Preferences\" -Type Binary -Value $preferences.Preferences\n        }\n        Remove-Item -Path \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MyComputer\\NameSpace\\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}\" -Recurse -ErrorAction SilentlyContinue\n\n        # Fix Managed by your organization in Edge if regustry path exists then remove it\n\n        If (Test-Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\") {\n            Remove-Item -Path \"HKLM:\\SOFTWARE\\Policies\\Microsoft\\Edge\" -Recurse -ErrorAction SilentlyContinue\n        }\n\n        # Group svchost.exe processes\n        $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb\n        Set-ItemProperty -Path \"HKLM:\\SYSTEM\\CurrentControlSet\\Control\" -Name \"SvcHostSplitThresholdInKB\" -Type DWord -Value $ram -Force\n\n        $autoLoggerDir = \"$env:PROGRAMDATA\\Microsoft\\Diagnosis\\ETLLogs\\AutoLogger\"\n        If (Test-Path \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\") {\n            Remove-Item \"$autoLoggerDir\\AutoLogger-Diagtrack-Listener.etl\"\n        }\n        icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null\n\n        # Disable Defender Auto Sample Submission\n        Set-MpPreference -SubmitSamplesConsent 2 -ErrorAction SilentlyContinue | Out-Null\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry","title":"Registry Key: AllowTelemetry","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-allowtelemetry_1","title":"Registry Key: AllowTelemetry","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-contentdeliveryallowed","title":"Registry Key: ContentDeliveryAllowed","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-oempreinstalledappsenabled","title":"Registry Key: OemPreInstalledAppsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappsenabled","title":"Registry Key: PreInstalledAppsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-preinstalledappseverenabled","title":"Registry Key: PreInstalledAppsEverEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-silentinstalledappsenabled","title":"Registry Key: SilentInstalledAppsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338387enabled","title":"Registry Key: SubscribedContent-338387Enabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338388enabled","title":"Registry Key: SubscribedContent-338388Enabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-338389enabled","title":"Registry Key: SubscribedContent-338389Enabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-subscribedcontent-353698enabled","title":"Registry Key: SubscribedContent-353698Enabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systempanesuggestionsenabled","title":"Registry Key: SystemPaneSuggestionsEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-numberofsiufinperiod","title":"Registry Key: NumberOfSIUFInPeriod","text":"

                Type: DWord

                Original Value: 0

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-donotshowfeedbacknotifications","title":"Registry Key: DoNotShowFeedbackNotifications","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabletailoredexperienceswithdiagnosticdata","title":"Registry Key: DisableTailoredExperiencesWithDiagnosticData","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabledbygrouppolicy","title":"Registry Key: DisabledByGroupPolicy","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-disabled","title":"Registry Key: Disabled","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-dodownloadmode","title":"Registry Key: DODownloadMode","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-fallowtogethelp","title":"Registry Key: fAllowToGetHelp","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enthusiastmode","title":"Registry Key: EnthusiastMode","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-peopleband","title":"Registry Key: PeopleBand","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-launchto","title":"Registry Key: LaunchTo","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-longpathsenabled","title":"Registry Key: LongPathsEnabled","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-searchorderconfig","title":"Registry Key: SearchOrderConfig","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-systemresponsiveness","title":"Registry Key: SystemResponsiveness","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-networkthrottlingindex","title":"Registry Key: NetworkThrottlingIndex","text":"

                Type: DWord

                Original Value: 1

                New Value: 4294967295

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-autoendtasks","title":"Registry Key: AutoEndTasks","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-clearpagefileatshutdown","title":"Registry Key: ClearPageFileAtShutdown","text":"

                Type: DWord

                Original Value: 0

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-start","title":"Registry Key: Start","text":"

                Type: DWord

                Original Value: 1

                New Value: 2

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-mousehovertime","title":"Registry Key: MouseHoverTime","text":"

                Type: String

                Original Value: 400

                New Value: 400

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-irpstacksize","title":"Registry Key: IRPStackSize","text":"

                Type: DWord

                Original Value: 20

                New Value: 30

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-enablefeeds","title":"Registry Key: EnableFeeds","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-shellfeedstaskbarviewmode","title":"Registry Key: ShellFeedsTaskbarViewMode","text":"

                Type: DWord

                Original Value: 1

                New Value: 2

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-hidescameetnow","title":"Registry Key: HideSCAMeetNow","text":"

                Type: DWord

                Original Value: 1

                New Value: 1

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#registry-key-scoobesystemsettingenabled","title":"Registry Key: ScoobeSystemSettingEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#scheduled-task-changes","title":"Scheduled Task Changes","text":"

                Windows scheduled tasks are used to run scripts or programs at specific times or events. Disabling unnecessary tasks can improve system performance and reduce unwanted background activity.

                You can find information about scheduled tasks on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemicrosoft-compatibility-appraiser","title":"Task Name: Microsoft\\Windows\\Application Experience\\Microsoft Compatibility Appraiser","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experienceprogramdataupdater","title":"Task Name: Microsoft\\Windows\\Application Experience\\ProgramDataUpdater","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsautochkproxy","title":"Task Name: Microsoft\\Windows\\Autochk\\Proxy","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programconsolidator","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\Consolidator","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowscustomer-experience-improvement-programusbceip","title":"Task Name: Microsoft\\Windows\\Customer Experience Improvement Program\\UsbCeip","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsdiskdiagnosticmicrosoft-windows-diskdiagnosticdatacollector","title":"Task Name: Microsoft\\Windows\\DiskDiagnostic\\Microsoft-Windows-DiskDiagnosticDataCollector","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclient","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClient","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsfeedbacksiufdmclientonscenariodownload","title":"Task Name: Microsoft\\Windows\\Feedback\\Siuf\\DmClientOnScenarioDownload","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowswindows-error-reportingqueuereporting","title":"Task Name: Microsoft\\Windows\\Windows Error Reporting\\QueueReporting","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencemarebackup","title":"Task Name: Microsoft\\Windows\\Application Experience\\MareBackup","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencestartupapptask","title":"Task Name: Microsoft\\Windows\\Application Experience\\StartupAppTask","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsapplication-experiencepcapatchdbtask","title":"Task Name: Microsoft\\Windows\\Application Experience\\PcaPatchDbTask","text":"

                State: Disabled

                Original State: Enabled

                "},{"location":"dev/tweaks/Essential-Tweaks/Tele/#task-name-microsoftwindowsmapsmapsupdatetask","title":"Task Name: Microsoft\\Windows\\Maps\\MapsUpdateTask","text":"

                State: Disabled

                Original State: Enabled

                View the JSON file

                "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/","title":"Disable Wifi-Sense","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#description","title":"Description","text":"

                Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.

                Preview Code
                {\n  \"Content\": \"Disable Wifi-Sense\",\n  \"Description\": \"Wifi Sense is a spying service that phones home all nearby scanned wifi networks and your current geo location.\",\n  \"category\": \"Essential Tweaks\",\n  \"panel\": \"1\",\n  \"Order\": \"a005_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowWiFiHotSpotReporting\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    },\n    {\n      \"Path\": \"HKLM:\\\\Software\\\\Microsoft\\\\PolicyManager\\\\default\\\\WiFi\\\\AllowAutoConnectToWiFiSenseHotspots\",\n      \"Name\": \"Value\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Essential-Tweaks/Wifi\"\n}\n
                "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value","title":"Registry Key: Value","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/Essential-Tweaks/Wifi/#registry-key-value_1","title":"Registry Key: Value","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/","title":"Add and Activate Ultimate Performance Profile","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Add and Activate Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a080_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/AddUltPerf\"\n}\n
                "},{"location":"dev/tweaks/Performance-Plans/AddUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
                Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/","title":"Remove Ultimate Performance Profile","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Remove Ultimate Performance Profile\",\n  \"category\": \"Performance Plans\",\n  \"panel\": \"2\",\n  \"Order\": \"a081_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Performance-Plans/RemoveUltPerf\"\n}\n
                "},{"location":"dev/tweaks/Performance-Plans/RemoveUltPerf/#function-invoke-wpfultimateperformance","title":"Function: Invoke-WPFUltimatePerformance","text":"
                Function Invoke-WPFUltimatePerformance {\n    <#\n\n    .SYNOPSIS\n        Creates or removes the Ultimate Performance power scheme\n\n    .PARAMETER State\n        Indicates whether to enable or disable the Ultimate Performance power scheme\n\n    #>\n    param($State)\n    try {\n        # Check if Ultimate Performance plan is installed\n        $ultimatePlan = powercfg -list | Select-String -Pattern \"Ultimate Performance\"\n        if($state -eq \"Enable\") {\n            if ($ultimatePlan) {\n                Write-Host \"Ultimate Performance plan is already installed.\"\n            } else {\n                Write-Host \"Installing Ultimate Performance plan...\"\n                powercfg -duplicatescheme e9a42b02-d5df-448d-aa00-03f14749eb61\n                Write-Host \"> Ultimate Performance plan installed.\"\n            }\n\n            # Set the Ultimate Performance plan as active\n            $ultimatePlanGUID = (powercfg -list | Select-String -Pattern \"Ultimate Performance\").Line.Split()[3]\n            powercfg -setactive $ultimatePlanGUID\n\n            Write-Host \"Ultimate Performance plan is now active.\"\n\n\n        }\n        elseif($state -eq \"Disable\") {\n            if ($ultimatePlan) {\n                # Extract the GUID of the Ultimate Performance plan\n                $ultimatePlanGUID = $ultimatePlan.Line.Split()[3]\n\n                # Set a different power plan as active before deleting the Ultimate Performance plan\n                $balancedPlanGUID = (powercfg -list | Select-String -Pattern \"Balanced\").Line.Split()[3]\n                powercfg -setactive $balancedPlanGUID\n\n                # Delete the Ultimate Performance plan\n                powercfg -delete $ultimatePlanGUID\n\n                Write-Host \"Ultimate Performance plan has been uninstalled.\"\n                Write-Host \"> Balanced plan is now active.\"\n            } else {\n                Write-Host \"Ultimate Performance plan is not installed.\"\n            }\n        }\n    } catch {\n        Write-Warning $psitem.Exception.Message\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/Shortcuts/Shortcut/","title":"Create WinUtil Shortcut","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Create WinUtil Shortcut\",\n  \"category\": \"Shortcuts\",\n  \"panel\": \"2\",\n  \"Order\": \"a082_\",\n  \"Type\": \"Button\",\n  \"ButtonWidth\": \"300\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/Shortcuts/Shortcut\"\n}\n
                "},{"location":"dev/tweaks/Shortcuts/Shortcut/#function-invoke-wpfshortcut","title":"Function: Invoke-WPFShortcut","text":"
                function Invoke-WPFShortcut {\n    <#\n\n    .SYNOPSIS\n        Creates a shortcut and prompts for a save location\n\n    .PARAMETER ShortcutToAdd\n        The name of the shortcut to add\n\n    .PARAMETER RunAsAdmin\n        A boolean value to make 'Run as administrator' property on (true) or off (false), defaults to off\n\n    #>\n    param(\n        $ShortcutToAdd,\n        [bool]$RunAsAdmin = $false\n    )\n\n    # Preper the Shortcut Fields and add an a Custom Icon if it's available, else don't add a Custom Icon.\n\n    Switch ($ShortcutToAdd) {\n        \"WinUtil\" {\n            # Use Powershell 7 if installed and fallback to PS5 if not\n            if (Get-Command \"pwsh\" -ErrorAction SilentlyContinue) {\n                $shell = \"pwsh.exe\"\n            } else {\n                $shell = \"powershell.exe\"\n            }\n\n            $shellArgs = \"-ExecutionPolicy Bypass -Command `\"Start-Process $shell -verb runas -ArgumentList `'-Command `\"irm https://github.com/ChrisTitusTech/winutil/releases/latest/download/winutil.ps1 | iex`\"`'\"\n\n            $DestinationName = \"WinUtil.lnk\"\n        }\n    }\n\n    # Show a File Dialog Browser, to let the User choose the Name and Location of where to save the Shortcut\n    $FileBrowser = New-Object System.Windows.Forms.SaveFileDialog\n    $FileBrowser.InitialDirectory = [Environment]::GetFolderPath('Desktop')\n    $FileBrowser.Filter = \"Shortcut Files (*.lnk)|*.lnk\"\n    $FileBrowser.FileName = $DestinationName\n\n    # Do an Early Return if the Save Operation was canceled by User's Input.\n    $FileBrowserResult = $FileBrowser.ShowDialog()\n    $DialogResultEnum = New-Object System.Windows.Forms.DialogResult\n    if (-not ($FileBrowserResult -eq $DialogResultEnum::OK)) {\n        return\n    }\n\n    # Prepare the Shortcut paramter\n    $WshShell = New-Object -comObject WScript.Shell\n    $Shortcut = $WshShell.CreateShortcut($FileBrowser.FileName)\n    $Shortcut.TargetPath = $shell\n    $Shortcut.Arguments = $shellArgs\n    if (Test-Path -Path $winutildir[\"logo.ico\"]) {\n        $shortcut.IconLocation = $winutildir[\"logo.ico\"]\n    }\n\n    # Save the Shortcut to disk\n    $Shortcut.Save()\n\n    if ($RunAsAdmin -eq $true) {\n        $bytes = [System.IO.File]::ReadAllBytes($FileBrowser.FileName)\n        # Set byte value at position 0x15 in hex, or 21 in decimal, from the value 0x00 to 0x20 in hex\n        $bytes[0x15] = $bytes[0x15] -bor 0x20\n        [System.IO.File]::WriteAllBytes($FileBrowser.FileName, $bytes)\n    }\n\n    Write-Host \"Shortcut for $ShortcutToAdd has been saved to $($FileBrowser.FileName) with 'Run as administrator' set to $RunAsAdmin\"\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/","title":"Adobe Network Block","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#description","title":"Description","text":"

                Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs

                Preview Code
                {\n  \"Content\": \"Adobe Network Block\",\n  \"Description\": \"Reduce user interruptions by selectively blocking connections to Adobe's activation and telemetry servers. Credit: Ruddernation-Designs\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \\\"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\\\"\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n      $tempHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\temp_hosts\\\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \\\"Downloaded the remote HOSTS file to a temporary location.\\\"\n      } catch {\n          Write-Error \\\"Failed to download the HOSTS file. Error: $_\\\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \\\"*#AdobeNetBlock-start*\\\"\n          if ($blockStartExists) {\n              Write-Output \\\"AdobeNetBlock-start already exists. Skipping addition of new block.\\\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \\\"^\\\\s*#\\\" -and $_ -ne \\\"\\\" } # Exclude empty lines and comments\n              $newBlockHeader = \\\"#AdobeNetBlock-start\\\"\n              $newBlockFooter = \\\"#AdobeNetBlock-end\\\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \\\"Successfully added the AdobeNetBlock.\\\"\n          }\n      } catch {\n          Write-Error \\\"Error during processing: $_\\\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      # Define the local path of the HOSTS file\n      $localHostsPath = \\\"C:\\\\Windows\\\\System32\\\\drivers\\\\etc\\\\hosts\\\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \\\"Failed to load the HOSTS file. Error: $_\\\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \\\"#AdobeNetBlock-start\\\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \\\"#AdobeNetBlock-end\\\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \\\"Successfully removed the AdobeNetBlock section from the HOSTS file.\\\"\n      } catch {\n          Write-Error \\\"Failed to write back to the HOSTS file. Error: $_\\\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \\\"ipconfig /flushdns\\\"\n          Write-Output \\\"DNS cache flushed successfully.\\\"\n      } catch {\n          Write-Error \\\"Failed to flush DNS cache. Error: $_\\\"\n      }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#invoke-script","title":"Invoke Script","text":"
                      # Define the URL of the remote HOSTS file and the local paths\n      $remoteHostsUrl = \"https://raw.githubusercontent.com/Ruddernation-Designs/Adobe-URL-Block-List/master/hosts\"\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n      $tempHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\temp_hosts\"\n\n      # Download the remote HOSTS file to a temporary location\n      try {\n          Invoke-WebRequest -Uri $remoteHostsUrl -OutFile $tempHostsPath\n          Write-Output \"Downloaded the remote HOSTS file to a temporary location.\"\n      } catch {\n          Write-Error \"Failed to download the HOSTS file. Error: $_\"\n      }\n\n      # Check if the AdobeNetBlock has already been started\n      try {\n          $localHostsContent = Get-Content $localHostsPath -ErrorAction Stop\n\n          # Check if AdobeNetBlock markers exist\n          $blockStartExists = $localHostsContent -like \"*#AdobeNetBlock-start*\"\n          if ($blockStartExists) {\n              Write-Output \"AdobeNetBlock-start already exists. Skipping addition of new block.\"\n          } else {\n              # Load the new block from the downloaded file\n              $newBlockContent = Get-Content $tempHostsPath -ErrorAction Stop\n              $newBlockContent = $newBlockContent | Where-Object { $_ -notmatch \"^\\s*#\" -and $_ -ne \"\" } # Exclude empty lines and comments\n              $newBlockHeader = \"#AdobeNetBlock-start\"\n              $newBlockFooter = \"#AdobeNetBlock-end\"\n\n              # Combine the contents, ensuring new block is properly formatted\n              $combinedContent = $localHostsContent + $newBlockHeader, $newBlockContent, $newBlockFooter | Out-String\n\n              # Write the combined content back to the original HOSTS file\n              $combinedContent | Set-Content $localHostsPath -Encoding ASCII\n              Write-Output \"Successfully added the AdobeNetBlock.\"\n          }\n      } catch {\n          Write-Error \"Error during processing: $_\"\n      }\n\n      # Clean up temporary file\n      Remove-Item $tempHostsPath -ErrorAction Ignore\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/BlockAdobeNet/#undo-script","title":"Undo Script","text":"
                      # Define the local path of the HOSTS file\n      $localHostsPath = \"C:\\Windows\\System32\\drivers\\etc\\hosts\"\n\n      # Load the content of the HOSTS file\n      try {\n          $hostsContent = Get-Content $localHostsPath -ErrorAction Stop\n      } catch {\n          Write-Error \"Failed to load the HOSTS file. Error: $_\"\n          return\n      }\n\n      # Initialize flags and buffer for new content\n      $recording = $true\n      $newContent = @()\n\n      # Iterate over each line of the HOSTS file\n      foreach ($line in $hostsContent) {\n          if ($line -match \"#AdobeNetBlock-start\") {\n              $recording = $false\n          }\n          if ($recording) {\n              $newContent += $line\n          }\n          if ($line -match \"#AdobeNetBlock-end\") {\n              $recording = $true\n          }\n      }\n\n      # Write the filtered content back to the HOSTS file\n      try {\n          $newContent | Set-Content $localHostsPath -Encoding ASCII\n          Write-Output \"Successfully removed the AdobeNetBlock section from the HOSTS file.\"\n      } catch {\n          Write-Error \"Failed to write back to the HOSTS file. Error: $_\"\n      }\n\n      # Flush the DNS resolver cache\n      try {\n          Invoke-Expression \"ipconfig /flushdns\"\n          Write-Output \"DNS cache flushed successfully.\"\n      } catch {\n          Write-Error \"Failed to flush DNS cache. Error: $_\"\n      }\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/","title":"Remove ALL MS Store Apps - NOT RECOMMENDED","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#description","title":"Description","text":"

                USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!

                Preview Code
                {\n  \"Content\": \"Remove ALL MS Store Apps - NOT RECOMMENDED\",\n  \"Description\": \"USE WITH CAUTION!!!!! This will remove ALL Microsoft store apps other than the essentials to make winget work. Games installed by MS Store ARE INCLUDED!\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a028_\",\n  \"appx\": [\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.AppConnector\",\n    \"Microsoft.BingFinance\",\n    \"Microsoft.BingNews\",\n    \"Microsoft.BingSports\",\n    \"Microsoft.BingTranslator\",\n    \"Microsoft.BingWeather\",\n    \"Microsoft.BingFoodAndDrink\",\n    \"Microsoft.BingHealthAndFitness\",\n    \"Microsoft.BingTravel\",\n    \"Microsoft.MinecraftUWP\",\n    \"Microsoft.GamingServices\",\n    \"Microsoft.GetHelp\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.Messaging\",\n    \"Microsoft.Microsoft3DViewer\",\n    \"Microsoft.MicrosoftSolitaireCollection\",\n    \"Microsoft.NetworkSpeedTest\",\n    \"Microsoft.News\",\n    \"Microsoft.Office.Lens\",\n    \"Microsoft.Office.Sway\",\n    \"Microsoft.Office.OneNote\",\n    \"Microsoft.OneConnect\",\n    \"Microsoft.People\",\n    \"Microsoft.Print3D\",\n    \"Microsoft.SkypeApp\",\n    \"Microsoft.Wallet\",\n    \"Microsoft.Whiteboard\",\n    \"Microsoft.WindowsAlarms\",\n    \"microsoft.windowscommunicationsapps\",\n    \"Microsoft.WindowsFeedbackHub\",\n    \"Microsoft.WindowsMaps\",\n    \"Microsoft.YourPhone\",\n    \"Microsoft.WindowsSoundRecorder\",\n    \"Microsoft.XboxApp\",\n    \"Microsoft.ConnectivityStore\",\n    \"Microsoft.ScreenSketch\",\n    \"Microsoft.Xbox.TCUI\",\n    \"Microsoft.XboxGameOverlay\",\n    \"Microsoft.XboxGameCallableUI\",\n    \"Microsoft.XboxSpeechToTextOverlay\",\n    \"Microsoft.MixedReality.Portal\",\n    \"Microsoft.XboxIdentityProvider\",\n    \"Microsoft.ZuneMusic\",\n    \"Microsoft.ZuneVideo\",\n    \"Microsoft.Getstarted\",\n    \"Microsoft.MicrosoftOfficeHub\",\n    \"*EclipseManager*\",\n    \"*ActiproSoftwareLLC*\",\n    \"*AdobeSystemsIncorporated.AdobePhotoshopExpress*\",\n    \"*Duolingo-LearnLanguagesforFree*\",\n    \"*PandoraMediaInc*\",\n    \"*CandyCrush*\",\n    \"*BubbleWitch3Saga*\",\n    \"*Wunderlist*\",\n    \"*Flipboard*\",\n    \"*Twitter*\",\n    \"*Facebook*\",\n    \"*Royal Revolt*\",\n    \"*Sway*\",\n    \"*Speed Test*\",\n    \"*Dolby*\",\n    \"*Viber*\",\n    \"*ACGMediaPlayer*\",\n    \"*Netflix*\",\n    \"*OneCalendar*\",\n    \"*LinkedInforWindows*\",\n    \"*HiddenCityMysteryofShadows*\",\n    \"*Hulu*\",\n    \"*HiddenCity*\",\n    \"*AdobePhotoshopExpress*\",\n    \"*HotspotShieldFreeVPN*\",\n    \"*Microsoft.Advertising.Xaml*\"\n  ],\n  \"InvokeScript\": [\n    \"\n        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \\\"Stopping Teams process...\\\"\n        Stop-Process -Name \\\"*teams*\\\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Uninstalling Teams from AppData\\\\Microsoft\\\\Teams\\\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \\\"-uninstall -s\\\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \\\"Removing Teams AppxPackage...\\\"\n        Get-AppxPackage \\\"*Teams*\\\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \\\"*Teams*\\\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \\\"Deleting Teams directory\\\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \\\"Deleting Teams uninstall registry key\\\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall, HKLM:\\\\SOFTWARE\\\\Wow6432Node\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DeBloat/#invoke-script","title":"Invoke Script","text":"
                        $TeamsPath = [System.IO.Path]::Combine($env:LOCALAPPDATA, 'Microsoft', 'Teams')\n        $TeamsUpdateExePath = [System.IO.Path]::Combine($TeamsPath, 'Update.exe')\n\n        Write-Host \"Stopping Teams process...\"\n        Stop-Process -Name \"*teams*\" -Force -ErrorAction SilentlyContinue\n\n        Write-Host \"Uninstalling Teams from AppData\\Microsoft\\Teams\"\n        if ([System.IO.File]::Exists($TeamsUpdateExePath)) {\n            # Uninstall app\n            $proc = Start-Process $TeamsUpdateExePath \"-uninstall -s\" -PassThru\n            $proc.WaitForExit()\n        }\n\n        Write-Host \"Removing Teams AppxPackage...\"\n        Get-AppxPackage \"*Teams*\" | Remove-AppxPackage -ErrorAction SilentlyContinue\n        Get-AppxPackage \"*Teams*\" -AllUsers | Remove-AppxPackage -AllUsers -ErrorAction SilentlyContinue\n\n        Write-Host \"Deleting Teams directory\"\n        if ([System.IO.Directory]::Exists($TeamsPath)) {\n            Remove-Item $TeamsPath -Force -Recurse -ErrorAction SilentlyContinue\n        }\n\n        Write-Host \"Deleting Teams uninstall registry key\"\n        # Uninstall from Uninstall registry key UninstallString\n        $us = (Get-ChildItem -Path HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall, HKLM:\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall | Get-ItemProperty | Where-Object { $_.DisplayName -like '*Teams*'}).UninstallString\n        if ($us.Length -gt 0) {\n            $us = ($us.Replace('/I', '/uninstall ') + ' /quiet').Replace('  ', ' ')\n            $FilePath = ($us.Substring(0, $us.IndexOf('.exe') + 4).Trim())\n            $ProcessArgs = ($us.Substring($us.IndexOf('.exe') + 5).Trim().replace('  ', ' '))\n            $proc = Start-Process -FilePath $FilePath -Args $ProcessArgs -PassThru\n            $proc.WaitForExit()\n        }\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/","title":"Adobe Debloat","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#description","title":"Description","text":"

                Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates

                Preview Code
                {\n  \"Content\": \"Adobe Debloat\",\n  \"Description\": \"Manages Adobe Services, Adobe Desktop Service, and Acrobat Updates\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a021_\",\n  \"InvokeScript\": [\n    \"\n      function CCStopper {\n        $path = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\\\"Administrators\\\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \\\"Adobe Desktop Service.exe.old\\\" -Force\n        } else {\n            Write-Host \\\"Adobe Desktop Service is not in the default location.\\\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \\\"Acrobat Updates have been disabled.\\\"\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      function RestoreCCService {\n        $originalPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe.old\\\"\n        $newPath = \\\"C:\\\\Program Files (x86)\\\\Common Files\\\\Adobe\\\\Adobe Desktop Common\\\\ADS\\\\Adobe Desktop Service.exe\\\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \\\"Adobe Desktop Service.exe\\\" -Force\n            Write-Host \\\"Adobe Desktop Service has been restored.\\\"\n        } else {\n            Write-Host \\\"Backup file does not exist. No changes were made.\\\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \\\"HKLM:\\\\SOFTWARE\\\\WOW6432Node\\\\Adobe\\\\Adobe ARM\\\\Legacy\\\\Acrobat\\\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \\\"{*}\\\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \\\"Registry Key for changing Acrobat Updates does not exist in $fullPath\\\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n      \"\n  ],\n  \"service\": [\n    {\n      \"Name\": \"AGSService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AGMService\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeUpdateService\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Acrobat Update\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Genuine Monitor Service\",\n      \"StartupType\": \"Disabled\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeARMservice\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"Adobe Licensing Console\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CCXProcess\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"AdobeIPCBroker\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    },\n    {\n      \"Name\": \"CoreSync\",\n      \"StartupType\": \"Manual\",\n      \"OriginalType\": \"Automatic\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#invoke-script","title":"Invoke Script","text":"
                      function CCStopper {\n        $path = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        # Test if the path exists before proceeding\n        if (Test-Path $path) {\n            Takeown /f $path\n            $acl = Get-Acl $path\n            $acl.SetOwner([System.Security.Principal.NTAccount]\"Administrators\")\n            $acl | Set-Acl $path\n\n            Rename-Item -Path $path -NewName \"Adobe Desktop Service.exe.old\" -Force\n        } else {\n            Write-Host \"Adobe Desktop Service is not in the default location.\"\n        }\n      }\n\n\n      function AcrobatUpdates {\n        # Editing Acrobat Updates. The last folder before the key is dynamic, therefore using a script.\n        # Possible Values for the edited key:\n        # 0 = Do not download or install updates automatically\n        # 2 = Automatically download updates but let the user choose when to install them\n        # 3 = Automatically download and install updates (default value)\n        # 4 = Notify the user when an update is available but don't download or install it automatically\n        #   = It notifies the user using Windows Notifications. It runs on startup without having to have a Service/Acrobat/Reader running, therefore 0 is the next best thing.\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 0\n                Write-Host \"Acrobat Updates have been disabled.\"\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      CCStopper\n      AcrobatUpdates\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#undo-script","title":"Undo Script","text":"
                      function RestoreCCService {\n        $originalPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe.old\"\n        $newPath = \"C:\\Program Files (x86)\\Common Files\\Adobe\\Adobe Desktop Common\\ADS\\Adobe Desktop Service.exe\"\n\n        if (Test-Path -Path $originalPath) {\n            Rename-Item -Path $originalPath -NewName \"Adobe Desktop Service.exe\" -Force\n            Write-Host \"Adobe Desktop Service has been restored.\"\n        } else {\n            Write-Host \"Backup file does not exist. No changes were made.\"\n        }\n      }\n\n      function AcrobatUpdates {\n        # Default Value:\n        # 3 = Automatically download and install updates\n\n        $rootPath = \"HKLM:\\SOFTWARE\\WOW6432Node\\Adobe\\Adobe ARM\\Legacy\\Acrobat\"\n\n        # Get all subkeys under the specified root path\n        $subKeys = Get-ChildItem -Path $rootPath | Where-Object { $_.PSChildName -like \"{*}\" }\n\n        # Loop through each subkey\n        foreach ($subKey in $subKeys) {\n            # Get the full registry path\n            $fullPath = Join-Path -Path $rootPath -ChildPath $subKey.PSChildName\n            try {\n                Set-ItemProperty -Path $fullPath -Name Mode -Value 3\n            } catch {\n                Write-Host \"Registry Key for changing Acrobat Updates does not exist in $fullPath\"\n            }\n        }\n      }\n\n      RestoreCCService\n      AcrobatUpdates\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-changes","title":"Service Changes","text":"

                Windows services are background processes for system functions or applications. Setting some to manual optimizes performance by starting them only when needed.

                You can find information about services on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agsservice","title":"Service Name: AGSService","text":"

                Startup Type: Disabled

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-agmservice","title":"Service Name: AGMService","text":"

                Startup Type: Disabled

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeupdateservice","title":"Service Name: AdobeUpdateService","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-acrobat-update","title":"Service Name: Adobe Acrobat Update","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-genuine-monitor-service","title":"Service Name: Adobe Genuine Monitor Service","text":"

                Startup Type: Disabled

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobearmservice","title":"Service Name: AdobeARMservice","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobe-licensing-console","title":"Service Name: Adobe Licensing Console","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-ccxprocess","title":"Service Name: CCXProcess","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-adobeipcbroker","title":"Service Name: AdobeIPCBroker","text":"

                Startup Type: Manual

                Original Type: Automatic

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DebloatAdobe/#service-name-coresync","title":"Service Name: CoreSync","text":"

                Startup Type: Manual

                Original Type: Automatic

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/","title":"Disable Background Apps","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#description","title":"Description","text":"

                Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11

                Preview Code
                {\n  \"Content\": \"Disable Background Apps\",\n  \"Description\": \"Disables all Microsoft Store apps from running in the background, which has to be done individually since Win11\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\BackgroundAccessApplications\",\n      \"Name\": \"GlobalUserDisabled\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableBGapps/#registry-key-globaluserdisabled","title":"Registry Key: GlobalUserDisabled","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/","title":"Disable Fullscreen Optimizations","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#description","title":"Description","text":"

                Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen

                Preview Code
                {\n  \"Content\": \"Disable Fullscreen Optimizations\",\n  \"Description\": \"Disables FSO in all applications. NOTE: This will disable Color Management in Exclusive Fullscreen\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a024_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\System\\\\GameConfigStore\",\n      \"Name\": \"GameDVR_DXGIHonorFSEWindowsCompatible\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableFSO/#registry-key-gamedvr_dxgihonorfsewindowscompatible","title":"Registry Key: GameDVR_DXGIHonorFSEWindowsCompatible","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/","title":"Disable Intel MM (vPro LMS)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#description","title":"Description","text":"

                Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.

                Preview Code
                {\n  \"Content\": \"Disable Intel MM (vPro LMS)\",\n  \"Description\": \"Intel LMS service is always listening on all ports and could be a huge security risk. There is no need to run LMS on home machines and even in the Enterprise there are better solutions.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"InvokeScript\": [\n    \"\n        Write-Host \\\"Kill LMS\\\"\n        $serviceName = \\\"LMS\\\"\n        Write-Host \\\"Stopping and disabling service: $serviceName\\\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \\\"Removing service: $serviceName\\\";\n        sc.exe delete $serviceName;\n\n        Write-Host \\\"Removing LMS driver packages\\\";\n        $lmsDriverPackages = Get-ChildItem -Path \\\"C:\\\\Windows\\\\System32\\\\DriverStore\\\\FileRepository\\\" -Recurse -Filter \\\"lms.inf*\\\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \\\"Removing driver package: $($package.Name)\\\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \\\"No LMS driver packages found in the driver store.\\\";\n        } else {\n            Write-Host \\\"All found LMS driver packages have been removed.\\\";\n        }\n\n        Write-Host \\\"Searching and deleting LMS executable files\\\";\n        $programFilesDirs = @(\\\"C:\\\\Program Files\\\", \\\"C:\\\\Program Files (x86)\\\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \\\"LMS.exe\\\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \\\"Taking ownership of file: $($file.FullName)\\\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \\\"Deleting file: $($file.FullName)\\\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \\\"No LMS.exe files found in Program Files directories.\\\";\n        } else {\n            Write-Host \\\"All found LMS.exe files have been deleted.\\\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n       \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"LMS vPro needs to be redownloaded from intel.com\\\"\n\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#invoke-script","title":"Invoke Script","text":"
                        Write-Host \"Kill LMS\"\n        $serviceName = \"LMS\"\n        Write-Host \"Stopping and disabling service: $serviceName\"\n        Stop-Service -Name $serviceName -Force -ErrorAction SilentlyContinue;\n        Set-Service -Name $serviceName -StartupType Disabled -ErrorAction SilentlyContinue;\n\n        Write-Host \"Removing service: $serviceName\";\n        sc.exe delete $serviceName;\n\n        Write-Host \"Removing LMS driver packages\";\n        $lmsDriverPackages = Get-ChildItem -Path \"C:\\Windows\\System32\\DriverStore\\FileRepository\" -Recurse -Filter \"lms.inf*\";\n        foreach ($package in $lmsDriverPackages) {\n            Write-Host \"Removing driver package: $($package.Name)\";\n            pnputil /delete-driver $($package.Name) /uninstall /force;\n        }\n        if ($lmsDriverPackages.Count -eq 0) {\n            Write-Host \"No LMS driver packages found in the driver store.\";\n        } else {\n            Write-Host \"All found LMS driver packages have been removed.\";\n        }\n\n        Write-Host \"Searching and deleting LMS executable files\";\n        $programFilesDirs = @(\"C:\\Program Files\", \"C:\\Program Files (x86)\");\n        $lmsFiles = @();\n        foreach ($dir in $programFilesDirs) {\n            $lmsFiles += Get-ChildItem -Path $dir -Recurse -Filter \"LMS.exe\" -ErrorAction SilentlyContinue;\n        }\n        foreach ($file in $lmsFiles) {\n            Write-Host \"Taking ownership of file: $($file.FullName)\";\n            & icacls $($file.FullName) /grant Administrators:F /T /C /Q;\n            & takeown /F $($file.FullName) /A /R /D Y;\n            Write-Host \"Deleting file: $($file.FullName)\";\n            Remove-Item $($file.FullName) -Force -ErrorAction SilentlyContinue;\n        }\n        if ($lmsFiles.Count -eq 0) {\n            Write-Host \"No LMS.exe files found in Program Files directories.\";\n        } else {\n            Write-Host \"All found LMS.exe files have been deleted.\";\n        }\n        Write-Host 'Intel LMS vPro service has been disabled, removed, and blocked.';\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableLMS1/#undo-script","title":"Undo Script","text":"
                      Write-Host \"LMS vPro needs to be redownloaded from intel.com\"\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/","title":"Disable Notification Tray/Calendar","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#description","title":"Description","text":"

                Disables all Notifications INCLUDING Calendar

                Preview Code
                {\n  \"Content\": \"Disable Notification Tray/Calendar\",\n  \"Description\": \"Disables all Notifications INCLUDING Calendar\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a026_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\Explorer\",\n      \"Name\": \"DisableNotificationCenter\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\PushNotifications\",\n      \"Name\": \"ToastEnabled\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-disablenotificationcenter","title":"Registry Key: DisableNotificationCenter","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/DisableNotifications/#registry-key-toastenabled","title":"Registry Key: ToastEnabled","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/","title":"Disable IPv6","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#description","title":"Description","text":"

                Disables IPv6.

                Preview Code
                {\n  \"Content\": \"Disable IPv6\",\n  \"Description\": \"Disables IPv6.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"255\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Disable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"UndoScript\": [\n    \"Enable-NetAdapterBinding -Name \\\"*\\\" -ComponentID ms_tcpip6\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#invoke-script","title":"Invoke Script","text":"
                Disable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#undo-script","title":"Undo Script","text":"
                Enable-NetAdapterBinding -Name \"*\" -ComponentID ms_tcpip6\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Disableipsix/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

                Type: DWord

                Original Value: 0

                New Value: 255

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/","title":"Set Display for Performance","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#description","title":"Description","text":"

                Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.

                Preview Code
                {\n  \"Content\": \"Set Display for Performance\",\n  \"Description\": \"Sets the system preferences to performance. You can do this manually with sysdm.cpl as well.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"DragFullWindows\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MenuShowDelay\",\n      \"Value\": \"200\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Desktop\\\\WindowMetrics\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"MinAnimate\",\n      \"Value\": \"0\",\n      \"Type\": \"String\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Control Panel\\\\Keyboard\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"KeyboardDelay\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewAlphaSelect\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ListviewShadow\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarAnimations\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\VisualEffects\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"VisualFXSetting\",\n      \"Value\": \"3\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\DWM\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"EnableAeroPeek\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarMn\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"TaskbarDa\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"ShowTaskViewButton\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Search\",\n      \"OriginalValue\": \"1\",\n      \"Name\": \"SearchboxTaskbarMode\",\n      \"Value\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"Set-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\"\n  ],\n  \"UndoScript\": [\n    \"Remove-ItemProperty -Path \\\"HKCU:\\\\Control Panel\\\\Desktop\\\" -Name \\\"UserPreferencesMask\\\"\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Display\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#invoke-script","title":"Invoke Script","text":"
                Set-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\" -Type Binary -Value ([byte[]](144,18,3,128,16,0,0,0))\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#undo-script","title":"Undo Script","text":"
                Remove-ItemProperty -Path \"HKCU:\\Control Panel\\Desktop\" -Name \"UserPreferencesMask\"\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-dragfullwindows","title":"Registry Key: DragFullWindows","text":"

                Type: String

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-menushowdelay","title":"Registry Key: MenuShowDelay","text":"

                Type: String

                Original Value: 1

                New Value: 200

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-minanimate","title":"Registry Key: MinAnimate","text":"

                Type: String

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-keyboarddelay","title":"Registry Key: KeyboardDelay","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewalphaselect","title":"Registry Key: ListviewAlphaSelect","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-listviewshadow","title":"Registry Key: ListviewShadow","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbaranimations","title":"Registry Key: TaskbarAnimations","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-visualfxsetting","title":"Registry Key: VisualFXSetting","text":"

                Type: DWord

                Original Value: 1

                New Value: 3

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-enableaeropeek","title":"Registry Key: EnableAeroPeek","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarmn","title":"Registry Key: TaskbarMn","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-taskbarda","title":"Registry Key: TaskbarDa","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-showtaskviewbutton","title":"Registry Key: ShowTaskViewButton","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Display/#registry-key-searchboxtaskbarmode","title":"Registry Key: SearchboxTaskbarMode","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/","title":"Run OO Shutup 10","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Run OO Shutup 10\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a039_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/OOSUbutton/#function-invoke-wpfoosu","title":"Function: Invoke-WPFOOSU","text":"
                function Invoke-WPFOOSU {\n    <#\n    .SYNOPSIS\n        Downloads and runs OO Shutup 10\n    #>\n    try {\n        $OOSU_filepath = \"$ENV:temp\\OOSU10.exe\"\n        $Initial_ProgressPreference = $ProgressPreference\n        $ProgressPreference = \"SilentlyContinue\" # Disables the Progress Bar to drasticly speed up Invoke-WebRequest\n        Invoke-WebRequest -Uri \"https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe\" -OutFile $OOSU_filepath\n        Write-Host \"Starting OO Shutup 10 ...\"\n        Start-Process $OOSU_filepath\n    } catch {\n        Write-Host \"Error Downloading and Running OO Shutup 10\" -ForegroundColor Red\n    }\n    finally {\n        $ProgressPreference = $Initial_ProgressPreference\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/","title":"Disable Microsoft Copilot","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#description","title":"Description","text":"

                Disables MS Copilot AI built into Windows since 23H2.

                Preview Code
                {\n  \"Content\": \"Disable Microsoft Copilot\",\n  \"Description\": \"Disables MS Copilot AI built into Windows since 23H2.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a025_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SOFTWARE\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Policies\\\\Microsoft\\\\Windows\\\\WindowsCopilot\",\n      \"Name\": \"TurnOffWindowsCopilot\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    },\n    {\n      \"Path\": \"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\",\n      \"Name\": \"ShowCopilotButton\",\n      \"Type\": \"DWord\",\n      \"Value\": \"0\",\n      \"OriginalValue\": \"1\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"\n      Write-Host \\\"Remove Copilot\\\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Copilot\\\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#invoke-script","title":"Invoke Script","text":"
                      Write-Host \"Remove Copilot\"\n      dism /online /remove-package /package-name:Microsoft.Windows.Copilot\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#undo-script","title":"Undo Script","text":"
                      Write-Host \"Install Copilot\"\n      dism /online /add-package /package-name:Microsoft.Windows.Copilot\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot","title":"Registry Key: TurnOffWindowsCopilot","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-turnoffwindowscopilot_1","title":"Registry Key: TurnOffWindowsCopilot","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveCopilot/#registry-key-showcopilotbutton","title":"Registry Key: ShowCopilotButton","text":"

                Type: DWord

                Original Value: 1

                New Value: 0

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/","title":"Remove Microsoft Edge","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#description","title":"Description","text":"

                Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack

                Preview Code
                {\n  \"Content\": \"Remove Microsoft Edge\",\n  \"Description\": \"Removes MS Edge when it gets reinstalled by updates. Credit: Techie Jack\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n         Uninstall-WinUtilEdgeBrowser\n        \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install Microsoft Edge\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#invoke-script","title":"Invoke Script","text":"
                         Uninstall-WinUtilEdgeBrowser\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#undo-script","title":"Undo Script","text":"
                      Write-Host \"Install Microsoft Edge\"\n      Start-Process -FilePath winget -ArgumentList \"install --force -e --accept-source-agreements --accept-package-agreements --silent Microsoft.Edge \" -NoNewWindow -Wait\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveEdge/#function-uninstall-winutiledgebrowser","title":"Function: Uninstall-WinUtilEdgeBrowser","text":"
                Function Uninstall-WinUtilEdgeBrowser {\n\n    <#\n\n    .SYNOPSIS\n        This will uninstall edge by changing the region to Ireland and uninstalling edge the changing it back\n\n    #>\n\n$msedgeProcess = Get-Process -Name \"msedge\" -ErrorAction SilentlyContinue\n$widgetsProcess = Get-Process -Name \"widgets\" -ErrorAction SilentlyContinue\n# Checking if Microsoft Edge is running\nif ($msedgeProcess) {\n    Stop-Process -Name \"msedge\" -Force\n} else {\n    Write-Output \"msedge process is not running.\"\n}\n# Checking if Widgets is running\nif ($widgetsProcess) {\n    Stop-Process -Name \"widgets\" -Force\n} else {\n    Write-Output \"widgets process is not running.\"\n}\n\nfunction Uninstall-Process {\n    param (\n        [Parameter(Mandatory = $true)]\n        [string]$Key\n    )\n\n    $originalNation = [microsoft.win32.registry]::GetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', [Microsoft.Win32.RegistryValueKind]::String)\n\n    # Set Nation to 84 (France) temporarily\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', 68, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    # credits to he3als for the Acl commands\n    $fileName = \"IntegratedServicesRegionPolicySet.json\"\n    $pathISRPS = [Environment]::SystemDirectory + \"\\\" + $fileName\n    $aclISRPS = Get-Acl -Path $pathISRPS\n    $aclISRPSBackup = [System.Security.AccessControl.FileSecurity]::new()\n    $aclISRPSBackup.SetSecurityDescriptorSddlForm($acl.Sddl)\n    if (Test-Path -Path $pathISRPS) {\n        try {\n            $admin = [System.Security.Principal.NTAccount]$(New-Object System.Security.Principal.SecurityIdentifier('S-1-5-32-544')).Translate([System.Security.Principal.NTAccount]).Value\n\n            $aclISRPS.SetOwner($admin)\n            $rule = New-Object System.Security.AccessControl.FileSystemAccessRule($admin, 'FullControl', 'Allow')\n            $aclISRPS.AddAccessRule($rule)\n            Set-Acl -Path $pathISRPS -AclObject $aclISRPS\n\n            Rename-Item -Path $pathISRPS -NewName ($fileName + '.bak') -Force\n        }\n        catch {\n            Write-Error \"[$Mode] Failed to set owner for $pathISRPS\"\n        }\n    }\n\n    $baseKey = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    $registryPath = $baseKey + '\\ClientState\\' + $Key\n\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"[$Mode] Registry key not found: $registryPath\"\n        return\n    }\n\n    Remove-ItemProperty -Path $registryPath -Name \"experiment_control_labels\" -ErrorAction SilentlyContinue | Out-Null\n\n    $uninstallString = (Get-ItemProperty -Path $registryPath).UninstallString\n    $uninstallArguments = (Get-ItemProperty -Path $registryPath).UninstallArguments\n\n    if ([string]::IsNullOrEmpty($uninstallString) -or [string]::IsNullOrEmpty($uninstallArguments)) {\n        Write-Host \"[$Mode] Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    $uninstallArguments += \" --force-uninstall --delete-profile\"\n\n    # $uninstallCommand = \"`\"$uninstallString`\"\" + $uninstallArguments\n    if (!(Test-Path -Path $uninstallString)) {\n        Write-Host \"[$Mode] setup.exe not found at: $uninstallString\"\n        return\n    }\n    Start-Process -FilePath $uninstallString -ArgumentList $uninstallArguments -Wait -NoNewWindow -Verbose\n\n    # Restore Acl\n    if (Test-Path -Path ($pathISRPS + '.bak')) {\n        Rename-Item -Path ($pathISRPS + '.bak') -NewName $fileName -Force\n        Set-Acl -Path $pathISRPS -AclObject $aclISRPSBackup\n    }\n\n    # Restore Nation\n    [microsoft.win32.registry]::SetValue('HKEY_USERS\\.DEFAULT\\Control Panel\\International\\Geo', 'Nation', $originalNation, [Microsoft.Win32.RegistryValueKind]::String) | Out-Null\n\n    if ((Get-ItemProperty -Path $baseKey).IsEdgeStableUninstalled -eq 1) {\n        Write-Host \"[$Mode] Edge Stable has been successfully uninstalled\"\n    }\n}\n\nfunction Uninstall-Edge {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdateDev\", \"AllowUninstall\", 1, [Microsoft.Win32.RegistryValueKind]::DWord) | Out-Null\n\n    Uninstall-Process -Key '{56EB18F8-B008-4CBD-B6D2-8C97FE7E9062}'\n\n    @( \"$env:ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\",\n       \"$env:PUBLIC\\Desktop\",\n       \"$env:USERPROFILE\\Desktop\" ) | ForEach-Object {\n        $shortcutPath = Join-Path -Path $_ -ChildPath \"Microsoft Edge.lnk\"\n        if (Test-Path -Path $shortcutPath) {\n            Remove-Item -Path $shortcutPath -Force\n        }\n    }\n\n}\n\nfunction Uninstall-WebView {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft EdgeWebView\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    # Force to use system-wide WebView2\n    # [microsoft.win32.registry]::SetValue(\"HKEY_LOCAL_MACHINE\\SOFTWARE\\Policies\\Microsoft\\Edge\\WebView2\\BrowserExecutableFolder\", \"*\", \"%%SystemRoot%%\\System32\\Microsoft-Edge-WebView\")\n\n    Uninstall-Process -Key '{F3017226-FE2A-4295-8BDF-00C3A9A7E4C5}'\n}\n\nfunction Uninstall-EdgeUpdate {\n    Remove-ItemProperty -Path \"HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Microsoft Edge Update\" -Name \"NoRemove\" -ErrorAction SilentlyContinue | Out-Null\n\n    $registryPath = 'HKLM:\\SOFTWARE\\WOW6432Node\\Microsoft\\EdgeUpdate'\n    if (!(Test-Path -Path $registryPath)) {\n        Write-Host \"Registry key not found: $registryPath\"\n        return\n    }\n    $uninstallCmdLine = (Get-ItemProperty -Path $registryPath).UninstallCmdLine\n\n    if ([string]::IsNullOrEmpty($uninstallCmdLine)) {\n        Write-Host \"Cannot find uninstall methods for $Mode\"\n        return\n    }\n\n    Write-Output \"Uninstalling: $uninstallCmdLine\"\n    Start-Process cmd.exe \"/c $uninstallCmdLine\" -WindowStyle Hidden -Wait\n}\n\nUninstall-Edge\n    # \"WebView\" { Uninstall-WebView }\n    # \"EdgeUpdate\" { Uninstall-EdgeUpdate }\n\n\n\n\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/","title":"Remove Home and Gallery from explorer","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#description","title":"Description","text":"

                Removes the Home and Gallery from explorer and sets This PC as default

                Preview Code
                {\n  \"Content\": \"Remove Home and Gallery from explorer\",\n  \"Description\": \"Removes the Home and Gallery from explorer and sets This PC as default\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a029_\",\n  \"InvokeScript\": [\n    \"\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f\n      REG DELETE \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f\n      REG ADD \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\" /t REG_DWORD /d \\\"1\\\"\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\" /f /ve /t REG_SZ /d \\\"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\\\"\n      REG ADD \\\"HKEY_LOCAL_MACHINE\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Desktop\\\\NameSpace\\\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\\\" /f /ve /t REG_SZ /d \\\"CLSID_MSGraphHomeFolder\\\"\n      REG DELETE \\\"HKEY_CURRENT_USER\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\Advanced\\\" /f /v \\\"LaunchTo\\\"\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#invoke-script","title":"Invoke Script","text":"
                      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f\n      REG DELETE \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f\n      REG ADD \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\" /t REG_DWORD /d \"1\"\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveHomeGallery/#undo-script","title":"Undo Script","text":"
                      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\" /f /ve /t REG_SZ /d \"{e88865ea-0e1c-4e20-9aa6-edcd0212c87c}\"\n      REG ADD \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Desktop\\NameSpace\\{f874310e-b6b7-47dc-bc84-b9e6b38f5903}\" /f /ve /t REG_SZ /d \"CLSID_MSGraphHomeFolder\"\n      REG DELETE \"HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Advanced\" /f /v \"LaunchTo\"\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/","title":"Remove OneDrive","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#description","title":"Description","text":"

                Moves OneDrive files to Default Home Folders and Uninstalls it.

                Preview Code
                {\n  \"Content\": \"Remove OneDrive\",\n  \"Description\": \"Moves OneDrive files to Default Home Folders and Uninstalls it.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a030_\",\n  \"InvokeScript\": [\n    \"\n      $OneDrivePath = $($env:OneDrive)\n      Write-Host \\\"Removing OneDrive\\\"\n      $regPath = \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Uninstall\\\\OneDriveSetup.exe\\\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \\\"$regPath\\\" -Name \\\"UninstallString\\\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\\\" \\\")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \\\"$OneDriveArgs /silent\\\" -NoNewWindow -Wait\n      } else {\n          Write-Host \\\"Onedrive dosn't seem to be installed anymore\\\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \\\"Copy downloaded Files from the OneDrive Folder to Root UserProfile\\\"\n      Start-Process -FilePath powershell -ArgumentList \\\"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\\\' /mov /e /xj\\\" -NoNewWindow -Wait\n\n      Write-Host \\\"Removing OneDrive leftovers\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\Microsoft\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:localappdata\\\\OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:programdata\\\\Microsoft OneDrive\\\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$env:systemdrive\\\\OneDriveTemp\\\"\n      reg delete \\\"HKEY_CURRENT_USER\\\\Software\\\\Microsoft\\\\OneDrive\\\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \\\"$OneDrivePath\\\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \\\"$OneDrivePath\\\"\n      }\n\n      Write-Host \\\"Remove Onedrive from explorer sidebar\\\"\n      Set-ItemProperty -Path \\\"HKCR:\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n      Set-ItemProperty -Path \\\"HKCR:\\\\Wow6432Node\\\\CLSID\\\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\\\" -Name \\\"System.IsPinnedToNameSpaceTree\\\" -Value 0\n\n      Write-Host \\\"Removing run hook for new users\\\"\n      reg load \\\"hku\\\\Default\\\" \\\"C:\\\\Users\\\\Default\\\\NTUSER.DAT\\\"\n      reg delete \\\"HKEY_USERS\\\\Default\\\\SOFTWARE\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run\\\" /v \\\"OneDriveSetup\\\" /f\n      reg unload \\\"hku\\\\Default\\\"\n\n      Write-Host \\\"Removing startmenu entry\\\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\OneDrive.lnk\\\"\n\n      Write-Host \\\"Removing scheduled task\\\"\n      Get-ScheduledTask -TaskPath '\\\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \\\"Shell Fixing\\\"\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cache\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCache\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Cookies\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\INetCookies\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Favorites\\\" -Value \\\"$env:userprofile\\\\Favorites\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"History\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\\Microsoft\\\\Windows\\\\History\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Local AppData\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Local\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Music\\\" -Value \\\"$env:userprofile\\\\Music\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Video\\\" -Value \\\"$env:userprofile\\\\Videos\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"NetHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Network Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"PrintHood\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Printer Shortcuts\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Programs\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Recent\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Recent\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"SendTo\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\SendTo\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Start Menu\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Startup\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start Menu\\\\Programs\\\\Startup\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Templates\\\" -Value \\\"$env:userprofile\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Templates\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{374DE290-123F-4565-9164-39C4925E467B}\\\" -Value \\\"$env:userprofile\\\\Downloads\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Desktop\\\" -Value \\\"$env:userprofile\\\\Desktop\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"My Pictures\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"Personal\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\\\" -Value \\\"$env:userprofile\\\\Documents\\\" -Type ExpandString\n      Set-ItemProperty -Path \\\"HKCU:\\\\Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Explorer\\\\User Shell Folders\\\" -Name \\\"{0DDD015D-B06C-45D5-8C4C-F59713854639}\\\" -Value \\\"$env:userprofile\\\\Pictures\\\" -Type ExpandString\n      Write-Host \\\"Restarting explorer\\\"\n      taskkill.exe /F /IM \\\"explorer.exe\\\"\n      Start-Process \\\"explorer.exe\\\"\n\n      Write-Host \\\"Waiting for explorer to complete loading\\\"\n      Write-Host \\\"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\\\"\n      Write-Host \\\"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\\\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \\\"Something went Wrong during the Unistallation of OneDrive\\\" -ForegroundColor Red\n      }\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Write-Host \\\"Install OneDrive\\\"\n      Start-Process -FilePath winget -ArgumentList \\\"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \\\" -NoNewWindow -Wait\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#invoke-script","title":"Invoke Script","text":"
                      $OneDrivePath = $($env:OneDrive)\n      Write-Host \"Removing OneDrive\"\n      $regPath = \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OneDriveSetup.exe\"\n      if (Test-Path $regPath) {\n          $OneDriveUninstallString = Get-ItemPropertyValue \"$regPath\" -Name \"UninstallString\"\n          $OneDriveExe, $OneDriveArgs = $OneDriveUninstallString.Split(\" \")\n          Start-Process -FilePath $OneDriveExe -ArgumentList \"$OneDriveArgs /silent\" -NoNewWindow -Wait\n      } else {\n          Write-Host \"Onedrive dosn't seem to be installed anymore\" -ForegroundColor Red\n          return\n      }\n      # Check if OneDrive got Uninstalled\n      if (-not (Test-Path $regPath)) {\n      Write-Host \"Copy downloaded Files from the OneDrive Folder to Root UserProfile\"\n      Start-Process -FilePath powershell -ArgumentList \"robocopy '$($OneDrivePath)' '$($env:USERPROFILE.TrimEnd())\\' /mov /e /xj\" -NoNewWindow -Wait\n\n      Write-Host \"Removing OneDrive leftovers\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\Microsoft\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:localappdata\\OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:programdata\\Microsoft OneDrive\"\n      Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$env:systemdrive\\OneDriveTemp\"\n      reg delete \"HKEY_CURRENT_USER\\Software\\Microsoft\\OneDrive\" -f\n      # check if directory is empty before removing:\n      If ((Get-ChildItem \"$OneDrivePath\" -Recurse | Measure-Object).Count -eq 0) {\n          Remove-Item -Recurse -Force -ErrorAction SilentlyContinue \"$OneDrivePath\"\n      }\n\n      Write-Host \"Remove Onedrive from explorer sidebar\"\n      Set-ItemProperty -Path \"HKCR:\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n      Set-ItemProperty -Path \"HKCR:\\Wow6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}\" -Name \"System.IsPinnedToNameSpaceTree\" -Value 0\n\n      Write-Host \"Removing run hook for new users\"\n      reg load \"hku\\Default\" \"C:\\Users\\Default\\NTUSER.DAT\"\n      reg delete \"HKEY_USERS\\Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"OneDriveSetup\" /f\n      reg unload \"hku\\Default\"\n\n      Write-Host \"Removing startmenu entry\"\n      Remove-Item -Force -ErrorAction SilentlyContinue \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\OneDrive.lnk\"\n\n      Write-Host \"Removing scheduled task\"\n      Get-ScheduledTask -TaskPath '\\' -TaskName 'OneDrive*' -ea SilentlyContinue | Unregister-ScheduledTask -Confirm:$false\n\n      # Add Shell folders restoring default locations\n      Write-Host \"Shell Fixing\"\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"AppData\" -Value \"$env:userprofile\\AppData\\Roaming\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cache\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCache\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Cookies\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\INetCookies\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Favorites\" -Value \"$env:userprofile\\Favorites\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"History\" -Value \"$env:userprofile\\AppData\\Local\\Microsoft\\Windows\\History\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Local AppData\" -Value \"$env:userprofile\\AppData\\Local\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Music\" -Value \"$env:userprofile\\Music\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Video\" -Value \"$env:userprofile\\Videos\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"NetHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Network Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"PrintHood\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Printer Shortcuts\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Programs\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Recent\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Recent\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"SendTo\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\SendTo\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Start Menu\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Startup\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Templates\" -Value \"$env:userprofile\\AppData\\Roaming\\Microsoft\\Windows\\Templates\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{374DE290-123F-4565-9164-39C4925E467B}\" -Value \"$env:userprofile\\Downloads\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Desktop\" -Value \"$env:userprofile\\Desktop\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"My Pictures\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"Personal\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{F42EE2D3-909F-4907-8871-4C22FC0BF756}\" -Value \"$env:userprofile\\Documents\" -Type ExpandString\n      Set-ItemProperty -Path \"HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders\" -Name \"{0DDD015D-B06C-45D5-8C4C-F59713854639}\" -Value \"$env:userprofile\\Pictures\" -Type ExpandString\n      Write-Host \"Restarting explorer\"\n      taskkill.exe /F /IM \"explorer.exe\"\n      Start-Process \"explorer.exe\"\n\n      Write-Host \"Waiting for explorer to complete loading\"\n      Write-Host \"Please Note - The OneDrive folder at $OneDrivePath may still have items in it. You must manually delete it, but all the files should already be copied to the base user folder.\"\n      Write-Host \"If there are Files missing afterwards, please Login to Onedrive.com and Download them manually\" -ForegroundColor Yellow\n      Start-Sleep 5\n      } else {\n      Write-Host \"Something went Wrong during the Unistallation of OneDrive\" -ForegroundColor Red\n      }\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RemoveOnedrive/#undo-script","title":"Undo Script","text":"
                      Write-Host \"Install OneDrive\"\n      Start-Process -FilePath winget -ArgumentList \"install -e --accept-source-agreements --accept-package-agreements --silent Microsoft.OneDrive \" -NoNewWindow -Wait\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/","title":"Set Classic Right-Click Menu","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#description","title":"Description","text":"

                Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.

                Preview Code
                {\n  \"Content\": \"Set Classic Right-Click Menu \",\n  \"Description\": \"Great Windows 11 tweak to bring back good context menus when right clicking things in explorer.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"InvokeScript\": [\n    \"\n      New-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Name \\\"InprocServer32\\\" -force -value \\\"\\\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"UndoScript\": [\n    \"\n      Remove-Item -Path \\\"HKCU:\\\\Software\\\\Classes\\\\CLSID\\\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\\\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \\\"explorer\\\"\n      Stop-Process -InputObject $process\n      \"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#invoke-script","title":"Invoke Script","text":"
                      New-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Name \"InprocServer32\" -force -value \"\"\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/RightClickMenu/#undo-script","title":"Undo Script","text":"
                      Remove-Item -Path \"HKCU:\\Software\\Classes\\CLSID\\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\" -Recurse -Confirm:$false -Force\n      # Restarting Explorer in the Undo Script might not be necessary, as the Registry change without restarting Explorer does work, but just to make sure.\n      Write-Host Restarting explorer.exe ...\n      $process = Get-Process -Name \"explorer\"\n      Stop-Process -InputObject $process\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/","title":"Disable Teredo","text":"

                Last Updated: 2024-08-27

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#description","title":"Description","text":"

                Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games

                Preview Code
                {\n  \"Content\": \"Disable Teredo\",\n  \"Description\": \"Teredo network tunneling is a ipv6 feature that can cause additional latency, but may cause problems with some games\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a023_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Services\\\\Tcpip6\\\\Parameters\",\n      \"Name\": \"DisabledComponents\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\",\n      \"Type\": \"DWord\"\n    }\n  ],\n  \"InvokeScript\": [\n    \"netsh interface teredo set state disabled\"\n  ],\n  \"UndoScript\": [\n    \"netsh interface teredo set state default\"\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#invoke-script","title":"Invoke Script","text":"
                netsh interface teredo set state disabled\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#undo-script","title":"Undo Script","text":"
                netsh interface teredo set state default\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Teredo/#registry-key-disabledcomponents","title":"Registry Key: DisabledComponents","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/","title":"Set Time to UTC (Dual Boot)","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#description","title":"Description","text":"

                Essential for computers that are dual booting. Fixes the time sync with Linux Systems.

                Preview Code
                {\n  \"Content\": \"Set Time to UTC (Dual Boot)\",\n  \"Description\": \"Essential for computers that are dual booting. Fixes the time sync with Linux Systems.\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a027_\",\n  \"registry\": [\n    {\n      \"Path\": \"HKLM:\\\\SYSTEM\\\\CurrentControlSet\\\\Control\\\\TimeZoneInformation\",\n      \"Name\": \"RealTimeIsUniversal\",\n      \"Type\": \"DWord\",\n      \"Value\": \"1\",\n      \"OriginalValue\": \"0\"\n    }\n  ],\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-changes","title":"Registry Changes","text":"

                Applications and System Components store and retrieve configuration data to modify windows settings, so we can use the registry to change many settings in one place.

                You can find information about the registry on Wikipedia and Microsoft's Website.

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/UTC/#registry-key-realtimeisuniversal","title":"Registry Key: RealTimeIsUniversal","text":"

                Type: DWord

                Original Value: 0

                New Value: 1

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/","title":"Undo Selected Tweaks","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Undo Selected Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a042_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/Undoall/#function-invoke-wpfundoall","title":"Function: Invoke-WPFundoall","text":"
                function Invoke-WPFundoall {\n    <#\n\n    .SYNOPSIS\n        Undoes every selected tweak\n\n    #>\n\n    if($sync.ProcessRunning) {\n        $msg = \"[Invoke-WPFundoall] Install process is currently running.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    $tweaks = (Get-WinUtilCheckBoxes)[\"WPFtweaks\"]\n\n    if ($tweaks.count -eq 0) {\n        $msg = \"Please check the tweaks you wish to undo.\"\n        [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n        return\n    }\n\n    Invoke-WPFRunspace -ArgumentList $tweaks -DebugPreference $DebugPreference -ScriptBlock {\n        param($tweaks, $DebugPreference)\n\n        $sync.ProcessRunning = $true\n        if ($tweaks.count -eq 1) {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n        } else {\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n        }\n\n\n        for ($i = 0; $i -lt $tweaks.Count; $i++) {\n            Set-WinUtilProgressBar -Label \"Undoing $($tweaks[$i])\" -Percent ($i / $tweaks.Count * 100)\n            Invoke-WinUtiltweaks $tweaks[$i] -undo $true\n            $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$tweaks.Count) })\n        }\n\n        Set-WinUtilProgressBar -Label \"Undo Tweaks Finished\" -Percent 100\n        $sync.ProcessRunning = $false\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n        Write-Host \"==================================\"\n        Write-Host \"---  Undo Tweaks are Finished  ---\"\n        Write-Host \"==================================\"\n\n    }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/","title":"Run Tweaks","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"Run Tweaks\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a041_\",\n  \"Type\": \"Button\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/button\"\n}\n
                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/button/#function-invoke-wpftweaksbutton","title":"Function: Invoke-WPFtweaksbutton","text":"
                function Invoke-WPFtweaksbutton {\n  <#\n\n    .SYNOPSIS\n        Invokes the functions associated with each group of checkboxes\n\n  #>\n\n  if($sync.ProcessRunning) {\n    $msg = \"[Invoke-WPFtweaksbutton] Install process is currently running.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  $Tweaks = (Get-WinUtilCheckBoxes)[\"WPFTweaks\"]\n\n  Set-WinUtilDNS -DNSProvider $sync[\"WPFchangedns\"].text\n\n  if ($tweaks.count -eq 0 -and  $sync[\"WPFchangedns\"].text -eq \"Default\") {\n    $msg = \"Please check the tweaks you wish to perform.\"\n    [System.Windows.MessageBox]::Show($msg, \"Winutil\", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)\n    return\n  }\n\n  Write-Debug \"Number of tweaks to process: $($Tweaks.Count)\"\n\n  Invoke-WPFRunspace -ArgumentList $Tweaks -DebugPreference $DebugPreference -ScriptBlock {\n    param($Tweaks, $DebugPreference)\n    Write-Debug \"Inside Number of tweaks to process: $($Tweaks.Count)\"\n\n    $sync.ProcessRunning = $true\n\n    if ($Tweaks.count -eq 1) {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Indeterminate\" -value 0.01 -overlay \"logo\" })\n    } else {\n        $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"Normal\" -value 0.01 -overlay \"logo\" })\n    }\n    # Execute other selected tweaks\n\n    for ($i = 0; $i -lt $Tweaks.Count; $i++) {\n      Set-WinUtilProgressBar -Label \"Applying $($tweaks[$i])\" -Percent ($i / $Tweaks.Count * 100)\n      Invoke-WinUtilTweaks $tweaks[$i]$sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -value ($i/$Tweaks.Count) })\n    }\n    Set-WinUtilProgressBar -Label \"Tweaks finished\" -Percent 100\n    $sync.ProcessRunning = $false\n    $sync.form.Dispatcher.Invoke([action]{ Set-WinUtilTaskbaritem -state \"None\" -overlay \"checkmark\" })\n    Write-Host \"=================================\"\n    Write-Host \"--     Tweaks are Finished    ---\"\n    Write-Host \"=================================\"\n\n    # $ButtonType = [System.Windows.MessageBoxButton]::OK\n    # $MessageboxTitle = \"Tweaks are Finished \"\n    # $Messageboxbody = (\"Done\")\n    # $MessageIcon = [System.Windows.MessageBoxImage]::Information\n    # [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)\n  }\n}\n

                View the JSON file

                "},{"location":"dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns/","title":"DNS","text":"

                Last Updated: 2024-08-07

                Info

                The Development Documentation is auto generated for every compilation of WinUtil, meaning a part of it will always stay up-to-date. Developers do have the ability to add custom content, which won't be updated automatically.

                Preview Code
                {\n  \"Content\": \"DNS\",\n  \"category\": \"z__Advanced Tweaks - CAUTION\",\n  \"panel\": \"1\",\n  \"Order\": \"a040_\",\n  \"Type\": \"Combobox\",\n  \"ComboItems\": \"Default DHCP Google Cloudflare Cloudflare_Malware Cloudflare_Malware_Adult Open_DNS Quad9 AdGuard_Ads_Trackers AdGuard_Ads_Trackers_Malware_Adult\",\n  \"link\": \"https://christitustech.github.io/winutil/dev/tweaks/z--Advanced-Tweaks---CAUTION/changedns\"\n}\n

                View the JSON file

                "}]} \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz index a78bc3dd5b3e02ba111db9a7bcbf2e195d96c7f0..0eeedbe85a8a32207803cba1846f017725fbf794 100644 GIT binary patch delta 13 Ucmb=gXP58h;9%&vKasrx02{*uI{*Lx delta 13 Ucmb=gXP58h;9%Hwej

    DNS