The PowerShell commands in this module are intended to make it easier to automate the process of pausing and resuming Windows Updates on a Windows 10/11 desktop as well as a few other update-related settings. This module will not work on Windows 10 Home. If you are running an Enterprise edition of Windows, your settings may be managed via Group Policy, in which case you won't be able to use this module.
You can install the latest version of this module from the PowerShell Gallery.
Install-PSResource WindowsUpdateSettingThe module should work on PowerShell 7 running on a Windows platform.
- Get-WindowsActiveHours
- Get-WindowsUpdateDeferral
- Get-WindowsUpdateSetting
- Resume-WindowsUpdate
- Set-WindowsActiveHours
- Set-WindowsUpdateDeferral
- Suspend-WindowsUpdate
- Test-IsWindowsUpdatePaused
Normally, you would use Settings to pause Windows Update for 35 days.
You can use this module to toggle that setting from a PowerShell prompt.
PS C:\> Suspend-WindowsUpdate -passthru
Computername: PROSPERO
Paused PauseStartUTC PauseEndUTC TimeRemaining
------ ------------- ----------- -------------
True 3/18/2025 12:32:04 PM 4/22/2025 12:32:04 PM 35.03:59:59Or you can specify a date, as long as it is less than 35 days. Use Get-WindowsUpdateSetting to view the current values or Test-IsWindowsUpdatePaused to test.
Updates should resume automatically at the end of the pause period. However, you can run Resume-WindowsUpdate to resume updates manually.
Resume-WindowsUpdateThis module also contains commands to set your active hours.
PS C:\> Get-WindowsActiveHours
Computername Start End
------------ ----- ---
PROSPERO 06:00 AM 11:00 PM
PS C:\> Set-WindowsActiveHours -StartTime 8:00 -EndTime 20:00 -Passthru
Computername Start End
------------ ----- ---
PROSPERO 08:00 AM 08:00 PMThe module also contains commands to manage deferrals of certain updates.
You can view and modify these settings.
PS C:\> Get-WindowsUpdateDeferral
Computername FeatureUpdateDeferral QualityUpdateDeferral
------------ --------------------- ---------------------
PROSPERO undefined undefinedUse Set-WindowsUpdateDeferral to set the deferral values. You can use -Feature and -Quality to set the number of days to defer feature and quality updates, respectively.
PS C:\> Set-WindowsUpdateDeferral -Feature 30 -Quality 7 -Passthru
Computername FeatureUpdateDeferral QualityUpdateDeferral
------------ --------------------- ---------------------
PROSPERO 30 7You should test all of these commands on a non-production system.




