無法打開註冊表子項即使我嘗試在兩個位置都打開 - x64和x32 註冊表。我試圖獲取登錄到Visual Studio用戶的用戶名。無法打開註冊表子項
@"Software\Microsoft\VisualStudio\12.0\ConnectedUser\IdeUser\Cache"
無法看到IdeUser,但緩存返回null。
const string SubKey = @"Software\Microsoft\VisualStudio\12.0\ConnectedUser\IdeUser\Cache";
const string EmailAddressKeyName = "EmailAddress";
const string UserNameKeyName = "DisplayName";
RegistryKey localMachineRegistry64 = RegistryKey.OpenBaseKey(RegistryHive.CurrentUser, RegistryView.Registry64);
RegistryKey reg64 = localMachineRegistry64.OpenSubKey(SubKey, false);
if (reg64 != null)
{
return reg64.GetValue(SubKey, true).ToString();
}
//Check the 32-bit registry for "HKEY_LOCAL_MACHINE\SOFTWARE" if not found in the 64-bit registry:
RegistryKey localMachineRegistry32 = RegistryKey.OpenBaseKey(RegistryHive.CurrentUser, RegistryView.Registry32);
RegistryKey reg32 = localMachineRegistry32.OpenSubKey(SubKey, false);
if (reg32 != null)
{
return reg32.GetValue(SubKey, true).ToString();
}
聽起來像註冊表上的安全限制。你有沒有嘗試提升你的主機應用程序的權限?你還可以發佈你的代碼是'失敗' – DotNetHitMan
你好,請看我的意見如下/ – Vnuuk
是的,這不是一個答案。但DotNetHitMan要求我提供一個例子。我不能在評論中放置太多代碼 - 只能在帖子中。 – Vnuuk