如何解决密码学 MachineGuid 问题
我想知道如何获得名为 MachineGuid 的 SOFTWARE\Microsoft\Cryptography 密钥。当我在 C# .Net Core Console 应用程序上执行此操作时,结果显示 SOFTWARE\Microsoft\Cryptography 和密钥。
现在我在 C# .Net Framework Windows 窗体中尝试了它,它从那里向我显示 SOFTWARE\Wow6432Node\Microsoft\Cryptography 和关键 MachineGuid。我的代码没有改变,就在这里。
string keyS = string.Empty;
string x64Result = string.Empty;
string x86Result = string.Empty;
RegistryKey keyBaseX64 = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine,RegistryView.Registry64);
RegistryKey keyBaseX86 = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine,RegistryView.Registry32);
RegistryKey keyX64 = keyBaseX64.OpenSubKey("SOFTWARE\Microsoft\Cryptography",RegistryKeyPermissionCheck.ReadSubTree);
RegistryKey keyX86 = keyBaseX86.OpenSubKey("SOFTWARE\Microsoft\Cryptography",RegistryKeyPermissionCheck.ReadSubTree);
object resultObjX64 = keyX64.GetValue("MachineGuid",(object)"default");
object resultObjX86 = keyX86.GetValue("MachineGuid",(object)"default");
keyX64.Close();
keyX86.Close();
keyBaseX64.Close();
keyBaseX86.Close();
keyX64.dispose();
keyX86.dispose();
keyBaseX64.dispose();
keyBaseX86.dispose();
keyX64 = null;
keyX86 = null;
keyBaseX64 = null;
keyBaseX86 = null;
if (resultObjX64 != null && resultObjX64.ToString() != "default")
{
keyS = resultObjX64.ToString();
}
if (resultObjX86 != null && resultObjX86.ToString() != "default")
{
keyS = resultObjX86.ToString();
}
谁能告诉我为什么以及如何解决这个问题?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。