我正在使用以下C#代码来获取有关已安装应用程序的信息:
string registry_key = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
using(Microsoft.Win32.RegistryKey key = Registry.LocalMachine.OpenSubKey(registry_key))
{
foreach(string subkey_name in key.GetSubKeyNames())
{
using(RegistryKey subkey = key.OpenSubKey(subkey_name))
{
Console.WriteLine(subkey.GetValue("DisplayName"));
}
}
}
当我将此代码作为独立项目运行时,一切正常。
但:当我在整个项目中运行此代码时,某些应用程序不会出现。实际上,缺少的应用程序是我用于项目的3rdParty应用程序的一部分(为消除任何疑问,我在两种情况下使用的用户和权限都相同)。
有任何想法如何找到丢失的应用程序吗?