我正在使用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"]);
}
}
答案 0 :(得分:0)
您拥有Win32_Process class documentation中的所有属性。看起来你运气不好,使用wbemtest在我的机器上测试一些进程,我没有看到任何适合你需要的属性。流程可能不会泄露此类信息。
答案 1 :(得分:0)
它不是WMI,但适用于本地计算机上的进程。
您可以使用GetVersionInfo找到流程[sic。]的描述,实际上它是可执行文件的描述。然后检查FileDescription和/或ProductName properties。
但请注意,无法保证此信息可用。然而,这可能是你最好的选择。其他工具,如sysinternals process explorer,也会显示该信息。