4

コンピューターにインストールされているアプリケーションとそのパス ディレクトリのリストが必要なのですが、次のように表示されます。

     //Registry path which has information of all the softwares installed on machine
    string uninstallKey = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
    using (RegistryKey rk = Registry.LocalMachine.OpenSubKey(uninstallKey))
    {
        foreach (string skName in rk.GetSubKeyNames())
        {
            using (RegistryKey sk = rk.OpenSubKey(skName))
            {
                // we have many attributes other than these which are useful.
                Console.WriteLine(sk.GetValue("DisplayName") + 
            "  " + sk.GetValue("DisplayVersion"));
            }

        }
    }

どうすればパスを取得できますか? 試してみsk.GetValue("DisplayPath")ましたが、うまくいきません。

ありがとう!

4

2 に答える 2

1

パスを取得するには、次のことを見つけます。GetValue("InstallLocation")

それは機能しますが、非常に多くの値に対して「null」または「」になります。

于 2012-05-05T23:22:03.487 に答える