检查上次检查Windows更新的时间

时间:2012-02-09 17:03:58

标签: c# .net windows-update

如何在代码(c#/ .Net)中检查WHEN的最后一次检查是否已执行?

不安装或未安装WHICH更新,但是在执行上次检查时是什么时候?

最重要的是完成对Windows更新检查的完整历史记录,但我当然只能知道最后一次检查。

3 个答案:

答案 0 :(得分:12)

查看此注册表项:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\Results

它有3个子键,每个子键提供有关不同事件的不同信息

  • 检测
  • 下载
  • 安装

每个密钥都有一个LastSuccessTime值,您可以使用。

答案 1 :(得分:6)

在Windows 7,8,10上,您可以使用以下代码:

var auc = new AutomaticUpdatesClass();

DateTime? lastInstallationSuccessDateUtc = null;
if (auc.Results.LastInstallationSuccessDate is DateTime)
    lastInstallationSuccessDateUtc = new DateTime(((DateTime)auc.Results.LastInstallationSuccessDate).Ticks, DateTimeKind.Utc);

 DateTime? lastSearchSuccessDateUtc = null;
 if (auc.Results.LastSearchSuccessDate is DateTime)
     lastSearchSuccessDateUtc = new DateTime(((DateTime)auc.Results.LastSearchSuccessDate).Ticks, DateTimeKind.Utc);
  • 参考" C:\ Windows \ System32 \ wuapi.dll"。
  • 检查引用上的EmbeddedInteropTypes是否设置为False。

答案 2 :(得分:-5)

在Windows 7中,转到“控制面板”,“系统和安全”,“Windows Update”。可以选择查看所有更新的历史记录,其中包含每个更新的时间和日期。