【问题标题】:How to know if windows update is waitng for installation [duplicate]如何知道 Windows 更新是否正在等待安装 [重复]
【发布时间】:2012-10-06 08:20:20
【问题描述】:

可能重复:
Best way of detecting if Windows has Windows Updates ready to download/install?

我正在使用 C# .net 3.5。

我如何知道 Windows Update 中是否有准备安装的更新?

在 Windows 8 上,当 Windows 更新等待安装更新时,睡眠选项被禁用。

而不是常规的 3 个选项:1. 睡眠 2. 重新启动 3. 关机,只有 2 个选项: 1.重启并更新2.关机并更新。我需要识别此状态并通知用户机器无法进入睡眠模式,因为正在等待安装更新。

我可以使用 WUAPILib 吗?

谢谢

【问题讨论】:

  • 这不是同一个问题。我需要知道是否有需要重新启动的更新等待安装。

标签: c# windows-update


【解决方案1】:

您可以为此使用 WUApiLib (Com lib):

var updateSession = new UpdateSession();
var updateSearcher = updateSession.CreateUpdateSearcher();
updateSearcher.Online = false; //set to true if you want to search online
try
{
    var searchResult = updateSearcher.Search("IsInstalled=0 And IsHidden=0");
    if (searchResult.Updates.Count > 0)
    {
        MessageBox.Show("There are updates available for installation");
    }
}
catch (Exception ex)
{
    MessageBox.Show(ex.Message,"Error");
}

如果您想了解更多,请点击here

【讨论】:

  • 谢谢!但即使 Windows 更新没有等待用户安装更新,此方法也会返回 true。我需要确定 Windows 更新已下载更新并等待用户重新启动计算机并安装它们的状态。
  • @user844541 你的问题现在更清楚了。我不了解 Windows 8,但在 Windows 7 WUA 在这里创建了一个注册键 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired 为每个需要重新启动的更新添加了一个 DWORD1(在你的情况下可能会禁用睡眠模式) .请注意,这些值将在重新启动后被删除。
  • 是否还有一种方法可以知道 Windows 更新当前是否正在运行?我不想在 Windows 更新数据运行时重新启动计算机。我尝试检查 Wuauclt 或 TrustedInstaller 是否正在运行,但显然即使 Windows 更新未运行它们也在运行。
  • @user844541 不知道。但是您应该将其作为一个新问题发布,因为它与您遇到的问题不同,并且对于那些试图解决与您相同的问题的人来说,它会更容易找到。
猜你喜欢
  • 2012-10-11
  • 2014-07-22
  • 2012-11-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多