01-19-2022 08:22 AM
I've seen a few people online talking about Windows 10 privacy settings and other odd choices by Microsoft such as automatically downloading games. These are all the types of settings that should be controlled in a testing environment. When someone mentions these issues I usually reply with a tool called ShutUp10 that I've used for years. It is a pretty simple tool for turning off various telemetry data, among other things.
So this post is to mention how I've automated setting up Windows 10 machines using it.
The first thing I did was run the tool on a Windows 10 machine and turn off all the things I don't care about. Then I'd export the settings as a .cfg file. This file can be used in a command line call like this:
OOSU10.exe ooshutup10.cfg /quiet
This will import the config on the current machine. One other optional thing I do is take a System Restore snapshot before apply thing. I do this with a Powershell script I found online. And lastly I made this into an InnoSetup installer so all you have to do is run an EXE and all of this gets done for you.
Attached you'll find the InnoSetup config, along with everything else needed that I've mentioned here. In the output folder is an installer that can be run. Just know the settings it will apply are the ones I like and use, and you may want to replace the cfg file with your own settings, then make a new installer. The version of ShutUp10 in this installer is also a little old, but I didn't want to update it not knowing if it worked.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
01-19-2022 11:16 AM - edited 01-19-2022 11:16 AM
Just out of curiosity, can this control the Windows updates settings? I've had pretty good luck going into the group policy editor and setting it so that Windows updates do not auto-install, but a one-click solution sounds pretty nice.
IT doesn't like this, but during long-term tests (or even something I just want to run overnight), Windows update has often interrupted and I come in in the morning to a freshly updated PC with nothing running.
01-19-2022 12:29 PM
After making this post I realized I this might be more helpful in a blog series with a bunch of stuff that I do to an environment to make things good. One topic could be on Windows Updates. Personally we have tests running on remote RT controllers and so installing Windows Updates and restarting doesn't affect our tests. But before then we would go about doing this by changing the Task Scheduler.
In the Task Scheduler there is an entry for for the UpdateOrchestrator (under Microsoft >> Windows). Here there are a few entries that force Windows to reboot. I backed up these tasks, then editing them to not reboot, then set them to read-only for all user accounts. This meant Windows would still try to run the reboot task after downloading and installing an update, but it wouldn't do anything. And if Windows does an update that attempts to replace the task it shouldn't be allowed to due to file permissions.
I don't know if this is still the right way to go about this or not. But when we were doing this it would still cause updates to be downloaded and installed, but the computers wouldn't reboot until we manually rebooted them. I don't have an InnoSetup demonstrating this.
Other installer I have can adds My Computer to the desktop, enables RDP, adds the mapped network drives, removes all UWP Apps, restores the old Windows Photo Viewer, configures the lock screen, sets the local admin passwords, configures the secondary user, sets the wall paper with updating text using BGInfo, installs 7-zip, Notepad++, SVN, Chrome, NoSleep, OpenShell with a normal theme, properly removes OneDrive, and sets normal environment settings like showing extension on unknown file types.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
01-25-2022 02:52 AM
That's definitely a good trace to follow while setting up a PC for long lasting tests!
I can simply add that you need to trim windows power settings to prevent the unit to go to sleep after a while.
And I normally set power and suspend buttons settings to "Do nothing" just in case somebody sees a PC on and tries to shut it down (it happened several years ago in a customer's laboratory!)
01-25-2022 06:16 AM
@RobertoBozzolo wrote:
I can simply add that you need to trim windows power settings to prevent the unit to go to sleep after a while.
Along the same lines, I disable the USB Hub power settings where Windows can remove power to the hub to "save energy". I tend to avoid USB as much as possible, but it often cannot be avoided.
01-25-2022 07:45 AM
@RobertoBozzolo wrote:
I can simply add that you need to trim windows power settings to prevent the unit to go to sleep after a while.
So I tried going that route and often times our group policy, or some other factor, would change these settings back and it would go back to sleep. That's why one of the programs I mentioned was NoSleep. A simple AutoIt Script turned into an EXE that just turns on and off scroll lock every 50 seconds or so to keep the computer from sleeping or turning off a monitor. These computers are in a badge protected lab, and only users that should have access have access.
USB power is also another great suggestion to look out for. Our current setup has no USB connected devices but is is something I check when I do use them.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
16 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord