2016-12-18 3 views
0

특정 레지스트리 하위 키에 액세스하려고 시도하지만 특정 하위 키를 볼 수 없습니다.레지스트리에서 certian 하위 키를 볼 수 없습니다.

64 비트 버전의 Windows에서 32 비트 응용 프로그램을 실행합니다. 나는 this 질문을했다,하지만 난 다음 줄을 넣어 위치를 모르는 :

이 같은
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)) 
     { 
      if(subkey!=null) 
        Console.WriteLine(subkey.GetValue("DisplayName")); 
     } 
    } 
} 

답변

0

뭔가 작동합니다 :

string registry_key = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"; 
using(Microsoft.Win32.RegistryKey key = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64).OpenSubKey(registry_key)) 
{ 
    foreach(string subkey_name in key.GetSubKeyNames()) 
    { 
     using(RegistryKey subkey = key.OpenSubKey(subkey_name)) 
     { 
      if(subkey!=null) 
        Console.WriteLine(subkey.GetValue("DisplayName")); 
     } 
    } 
} 
내 코드에서

RegistryBase = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64); 

관련 문제