我正在尝试从注册表中获取MachineGuid
,以便为我的许可证系统创建一定程度的绑定。根据文档,我可以使用
string key = "HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography";
string r = (string)Registry.GetValue(key, "MachineGuid", (object)"default");
获取它。而且,文档告诉我当名称未找到时,我会得到"default"
,或者如果键不存在则为null
。如果我没有访问权限,我应该会收到安全异常。
上述代码给了我"default"
,这意味着名称未被找到。但是,如果我使用RegEdit在注册表中查看,它是存在的。如何在没有管理员权限的情况下从应用程序中获取MachineGuid
值?
更新:当使用reg.exe
时,我可以轻松获取值。
更新:我已更新标题,以便寻找确定Windows安装的独特方法的人也可以找到此处。