2011-05-26 45 views
-1

如果我安装名为'ABC'的软件,如果我提供软件名称'ABC'作为输入,如何获取C#.Net中的完整安装路径?获取已安装软件的路径c#.net

+0

呀,你不能。至少不可靠。放弃这个。 – 2011-05-26 10:31:37

+0

[如何获得已安装的软件产品列表?]的可能的重复(http://stackoverflow.com/questions/3526449/how-to-get-a-list-of-installed-software-products) – 2011-05-26 10:33:58

+0

鉴于此和[你的最后一个问题](http://stackoverflow.com/questions/6136763/c-net-operating-system-installed-directory),我明白你即将踏上一条非常糟糕的道路,做各种各样的你不应该以你不应该做的事情做事。 – 2011-05-26 10:37:48

回答

1

你可以试试下面

using System.Management; 

    ManagementObjectSearcher MyWMIQuery = new ManagementObjectSearcher("SELECT * FROM Win32_Product") ; 
    ManagementObjectCollection MyWMIQueryCollection = MyWMIQuery.Get(); 
    foreach(ManagementObject MyMO in MyWMIQueryCollection) 
    { 
     if(MyMO["Name"].ToString()=="ABC") 
     Console.WriteLine("InstallLocation : " + (MyMO["InstallLocation"] == null ? " " : MyMO["InstallLocation"].ToString())); 

     Console.ReadLine(); 
    } 
    MyWMIQueryCollection = null; 
    MyWMIQuery = null;