我是C++中的新手,目前正致力於在C++ DLL中獲取Windows Hotfix/Patch信息。Windows API相當於「WMIC QFE Get」
我已經評估以下幾種方式:
- 通過在C++代碼執行子流程和運行
wmic qfe get
和讀取所有數據。 - 通過使用C++ API初始化COM,連接到Wbem並執行
select * from win32_quickfixengineering
查詢。
除此之外,
有直接的Windows API做所有的工作對我來說並給出當前機器上安裝的KB信息的列表?
當前安裝在機器上的KB列表無用。例如,如果您想知道是否安裝了Q1234的修復程序,則即使KB1234不在已安裝的KB列表中,答案也可能爲「是」。修復可能是在一個彙總或服務包。正確答案不是查詢QFE列表並查找1234,而是詢問WU是否需要QFE 1234。 –
感謝陳的快速回復。我完全需要知道qfe得到的KB列表。我知道一些KBs部分服務包的情況,我們可以從OS Information獲得這些信息。如果編寫的任何類似qfe的API都可以直接使用,而不是從頭開始編寫代碼。 – TechyHarry
你還沒有解釋你將要使用這些信息,所以目前還不清楚這是否是正確的方法。無論如何,你總是可以[直接編程到WMI](http://msdn.microsoft.com/en-us/library/windows/desktop/aa390418)。這就是WMIC所做的。 –