我正在使用WMI查詢來獲取所有進程的列表,但我缺少的是進程描述! 當我使用「描述」屬性時,它看起來像這樣!如何使用WMI獲取進程描述?
Name : chrome.exe Description : chrome.exe
,但它應該是
Name : chrome.exe Description : Google Chrome
那麼,什麼是返回過程的描述屬性的名稱?
public void GetProcesses()
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher("Select * From Win32_Process");
ManagementObjectCollection processList = searcher.Get();
foreach (ManagementObject obj in processList)
{
Console.WriteLine("Name : {0} Description : {1}",obj["Name"],obj["Description"]);
}
}
好吧,即時消息使用WCF,客戶端獲得一個循環中的hostPC進程[ID,名稱,描述,工作集],你認爲每次在循環中聲明一個新的GetVersionInfo是個好主意嗎? –
您必須按進程/可執行文件調用它。但值不會改變,即當您確實想要爲WorkingSet返回更新的值時,您不需要爲版本信息這麼做 - 您可以緩存它。有時候,與每次只調用它相比,這是否值得遇到麻煩,這有點難以說明。你必須做一些測量,當然這取決於客戶端調用服務器的頻率(因此每個可執行文件調用GetVersionInfo。) –
我找到了一條出路,當我得到進程,我只更新如果一個新的進程啓動或關閉。感謝您的幫助 –