Windows Updateの最後のチェックがいつ実行されたかをコード(c#/。Net)で確認するにはどうすればよいですか?
どのアップデートがインストールされているか、インストールされていないかではなく、最後のチェックが実行されたのはいつですか?
何よりも、Windows Updateのチェックがいつ実行されたかの完全な履歴になりますが、最後のチェックを知っているだけで確実に生きることができます。
Windows Updateの最後のチェックがいつ実行されたかをコード(c#/。Net)で確認するにはどうすればよいですか?
どのアップデートがインストールされているか、インストールされていないかではなく、最後のチェックが実行されたのはいつですか?
何よりも、Windows Updateのチェックがいつ実行されたかの完全な履歴になりますが、最後のチェックを知っているだけで確実に生きることができます。
次のレジストリ キーを見てください。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\Results
それぞれが異なるイベントに関する異なる情報を提供する 3 つのサブキーがあります。
各キーには、LastSuccessTime
使用できる値があります。
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);