特定のQFE/パッチがインストールされていることをc#で判断する最良の方法は何ですか?
4089 次
2 に答える
2
WMIを使用して、Win32_QuickFixEngineering列挙体を検査します。
TechNetから:
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colQuickFixes = objWMIService.ExecQuery _
("Select * from Win32_QuickFixEngineering")
For Each objQuickFix in colQuickFixes
Wscript.Echo "Computer: " & objQuickFix.CSName
Wscript.Echo "Description: " & objQuickFix.Description
Wscript.Echo "Hot Fix ID: " & objQuickFix.HotFixID
Wscript.Echo "Installation Date: " & objQuickFix.InstallDate
Wscript.Echo "Installed By: " & objQuickFix.InstalledBy
Next
HotFixIDはあなたが調べたいものです。
これが私のシステムの出力です:
ホットフィックスID:KB941569
説明:Windows XPのセキュリティアップデート(KB941569)
ホットフィックスID:KB937143-IE7
説明:Windows Internet Explorer 7のセキュリティ更新プログラム(KB937143)
ホットフィックスID:KB938127-IE7
説明:Windows Internet Explorer 7のセキュリティ更新プログラム(KB938127)
ホットフィックスID:KB939653-IE7
説明:Windows Internet Explorer 7のセキュリティ更新プログラム(KB939653)
ホットフィックスID:KB942615-IE7
説明:Windows Internet Explorer 7のセキュリティ更新プログラム(KB942615)
ホットフィックスID:KB944533-IE7
説明:Windows Internet Explorer 7のセキュリティ更新プログラム(KB944533)
ホットフィックスID:KB947864-IE7
説明:Windows Internet Explorer 7のホットフィックス(KB947864)
ホットフィックスID:KB950759-IE7
説明:Windows Internet Explorer 7のセキュリティ更新プログラム(KB950759)
ホットフィックスID:KB953838-IE7
説明:Windows Internet Explorer 7のセキュリティ更新プログラム(KB953838)
ホットフィックスID:MSCompPackV1
説明:WindowsXP用のMicrosoftCompression Client Pack 1.0
ホットフィックスID:KB873339
説明:WindowsXPホットフィックス-KB873339
ホットフィックスID:KB885835
説明:WindowsXPホットフィックス-KB885835
ホットフィックスID:KB885836
説明:WindowsXPホットフィックス-KB885836
ホットフィックスID:KB886185
説明:WindowsXPホットフィックス-KB886185
ホットフィックスID:KB887472
説明:WindowsXPホットフィックス-KB887472
ホットフィックスID:KB888302
説明:WindowsXPホットフィックス-KB888302
ホットフィックスID:KB890046
説明:Windows XPのセキュリティアップデート(KB890046)
于 2008-10-15T15:47:52.547 に答える
1
最も信頼できる方法は、QFE の影響を受けるファイルを特定しSystem.Diagnostics.FileVersionInfo.GetVersionInfo(path)、各ファイルで使用してバージョン番号を比較することです。
編集: レジストリのアンインストール情報を確認する方法もあると思いますが、QFE がサービス パックまたはロールアップ パッケージの一部になり、誤検知を報告する可能性がある場合
于 2008-09-11T20:58:02.583 に答える