Microsoft.Update.AutoUpdate 或 Powershell 查询报告错误的 NotificationLevel

Microsoft.Update.AutoUpdate 或 Powershell 查询报告错误的 NotificationLevel

如果我使用 Sconfig > 5) Windows 更新设置显示为“手动”

但是当我在 powershell 中运行以下查询时:

(New-Object -ComObject "Microsoft.Update.AutoUpdate").Settings

它表示 NotificationLevel = 4,这意味着自动安装更新(4)

我的 Windows 更新 RegTree 如下所示: HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU REG_DWORD:NoAutoUpdate:1

我也尝试过:

PS C:\Users\Administrator> $WUSettings = (New-Object -com "Microsoft.Update.AutoUpdate").Settings
PS C:\Users\Administrator> $WUSettings.NotificationLevel=1
PS C:\Users\Administrator> $WUSettings.save()
PS C:\Users\Administrator> (New-Object -com "Microsoft.Update.AutoUpdate").Settings


NotificationLevel         : 4
ReadOnly                  : False
Required                  : True
ScheduledInstallationDay  : 0
ScheduledInstallationTime : 3
IncludeRecommendedUpdates : True
NonAdministratorsElevated : True
FeaturedUpdatesEnabled    : False

但正如您所看到的,它仍然报告NotificationLevel = 4 我的问题是:

  1. 我如何找出哪种方法告诉我错误的信息?
  2. 为什么它告诉我错误的信息?
  3. 我该如何解决?

答案1

您正在阅读的 IAutomaticUpdates::Settings 属性告诉您 Windows Update 本身认为的设置是什么。因此,这是最可靠的信息来源。

Windows 10 不支持修改 IAutomaticUpdates::Settings::NotificationLevel 设置。出于应用程序兼容性的必要原因,IAutomaticUpdates::Settings::Save 将“成功”,但实际上不会修改该设置。请参阅https://docs.microsoft.com/en-us/windows/win32/api/wuapi/nf-wuapi-iautomaticupdatessettings-get_notificationlevel

您所看到的行为最可能的原因是您尝试在运行 Windows 10 家庭版(或某些市场中的“入门版”SKU 之一)的 PC 上配置 Windows 更新设置。这些 SKU 不支持更改通知级别。具有管理功能的 Windows 10 SKU(如专业版和企业版 SKU)允许通过组策略或移动设备管理配置自动更新设置。

相关内容