

Update: Added GitLab test branch for non-production testing and so everyone can see planned upcoming changes working. That is more likely to have the latest version than downloading it anywhere else. I will be continuously updating the script as needed, so the best place to get it is the GitLab page. You can download the script below, or view it and download it on GitLab. I do plan on adding more functionality, such as the ability to not only undo app removal, services, and scheduled tasks as currently implemented, but for everything. I had started with multi-threading initially, but that would have delayed a working product. Multi-threading (or Runspaces in PowerShell), will prevent that.

The longest I had to wait for anything was about 6 seconds to processing about 100 settings at the same time. In version 2.0, I plan on adding multi-threading, mostly to prevent the app from hanging a couple seconds during intensive processing, and to also allow for dynamic updates to the GUI as things happen such as the progress bar… and to make things happen faster. This is the end result (now updated to 1.1.3). I needed something that allowed for granular control over all aspects the script includes, that was easy to use, and that also allowed for undoing actions.

I decided on following this one through because, although there are many Windows 10 decrapifier scripts out there to remove privacy compromising or superfluous apps and settings, they were all-or-nothing scrips with little to no control. This is one of my first PowerShell GUI scripts that I’ve been working on for a couple months.
