Я использую следующий код 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, которые я использую для своего проекта (чтобы устранить любые сомнения, я использую одного и того же пользователя и разрешения в обоих случаях).
Есть идеи, как найти отсутствующие приложения?