在Windows上运行的应用程序是否有任何唯一标识符?

时间:2014-08-07 23:21:50

标签: c# desktop-application uniqueidentifier tracker

我正在使用C#开发桌面应用程序来跟踪在Windows中运行的应用程序。这是安装在Windows中的每个应用程序的唯一编号吗?

我可以获取句柄号,但在重新打开应用程序时会更改句柄号。

我需要为windows中安装的每个应用程序提供唯一标识符。

1 个答案:

答案 0 :(得分:0)

使用WMI System.Management API。我想你需要IdentifyingNumber,它会为你提供产品的GUID。

    ManagementObjectSearcher mos = new ManagementObjectSearcher("SELECT * FROM Win32_Product");
    foreach (ManagementObject mo in mos.Get())
    {
        Console.WriteLine(mo["Name"]);
        foreach (PropertyData prop in mo.Properties)
        {
            Console.WriteLine("{0}: {1}", prop.Name, prop.Value);
        }
    }