Windows Updates used to be turn-off-able, so the host wouldn't reboot while running guests. My method was to allow updates to announce themselves but to use a script to actually run the updates after the batch file shuts down the guests.
Windows 10's pushy update scheme has turned this plan on its ear. Windows 10 will update and reboot when it feels it wants to, and we can't say No, although it may be possible to defer the reboot part to certain hour ranges during the day (not the week, mind, we can't plan on having the updates happen at Saturday 3AM and have the guests shut down ahead of time).
Well, I googled around and found a poster "NJC2" on Windows 10 Forums who thinks he has a solution. I'm trying it now and I figured to put it here so others could test too.
Here's the link:
http://www.tenforums.com/windows-update ... dates.html
The idea, reproduced here, is to disable the Update system's reboot flag every four minutes when the computer is idle. (Apparently Windows waits 5-10 minutes after the computer goes idle to order a reboot, according to NJC2.) The disabling process gets fired with a Scheduled Task.
If it is not beyond allowance to copy NJC2's task import file, saved as an XML and imported into the Task Scheduler, here it is:
Code: Select all
<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
<RegistrationInfo>
<Date>2016-10-13T14:08:07.2288437</Date>
<Author>NJC2 on TenForums.com</Author>
<URI>\Disable Windows Update Reboot Task</URI>
</RegistrationInfo>
<Triggers>
<IdleTrigger>
<Enabled>true</Enabled>
</IdleTrigger>
</Triggers>
<Principals>
<Principal id="Author">
<UserId>S-1-5-18</UserId>
<RunLevel>HighestAvailable</RunLevel>
</Principal>
</Principals>
<Settings>
<MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
<DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
<StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
<AllowHardTerminate>true</AllowHardTerminate>
<StartWhenAvailable>false</StartWhenAvailable>
<RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
<IdleSettings>
<Duration>PT4M</Duration>
<WaitTimeout>PT0S</WaitTimeout>
<StopOnIdleEnd>false</StopOnIdleEnd>
<RestartOnIdle>false</RestartOnIdle>
</IdleSettings>
<AllowStartOnDemand>true</AllowStartOnDemand>
<Enabled>true</Enabled>
<Hidden>false</Hidden>
<RunOnlyIfIdle>true</RunOnlyIfIdle>
<WakeToRun>false</WakeToRun>
<ExecutionTimeLimit>PT72H</ExecutionTimeLimit>
<Priority>7</Priority>
</Settings>
<Actions Context="Author">
<Exec>
<Command>C:\Windows\System32\schtasks.exe</Command>
<Arguments>/change /tn \Microsoft\Windows\UpdateOrchestrator\Reboot /disable</Arguments>
</Exec>
</Actions>
</Task>Another user in the linked thread, "dalchina", also recommended a utility called DontSleep. I have downloaded it but have not tried it yet.