阅读 C# 的 GAC 程序集

本文关键字:程序集 GAC 阅读 | 更新日期: 2023-09-27 18:30:57

我有一个安装在 GAC 中的程序集。此程序集是否可以访问HKEY_LOCAL_MACHINE'SOFTWARE'COMPANYNAME中的注册表值

我没有收到任何错误,但无法从上面的路径读取子项。我的程序集已强签名。

我使用注册表的原因是不允许使用配置文件。

示例代码

string regKey = "HKEY_LOCAL_MACHINE'SOFTWARE'COMPANYNAME";
string userGUID = (string)Registry.GetValue(regKey, "userGUID", "-1");

阅读 C# 的 GAC 程序集

如果运行的是 64 位操作系统,并且程序集是 x86,或者由 x86 进程调用,则注册表调用将重定向到HKEY_LOCAL_MACHINE'SOFTWARE'Wow6432Node'COMPANYNAME节点。这可能是问题的根源。