参考.net 强名称被跳过
重要说明:
是否能强制执行强名称验证取决于注册表项,如下面的过程所述。如果运行应用程序时使用的帐户没有访问该注册表项的访问控制列表 (ACL) 权限,该设置将无效。必须确保配置此注册表项的 ACL 权限,以使所有程序集都能读取此项。
对所有应用程序禁用强名称跳过功能
在 32 位计算机上,在系统注册表中的 HKEY_LOCAL_MACHINESOFTWAREMicrosoft.NETFramework 项下创建一个子项。使用 DWORD 值为 0 的项名称 AllowStrongNameBypass。
在 64 位计算机上,在系统注册表中的 HKEY_LOCAL_MACHINESOFTWAREMicrosoft.NETFramework 项下创建一个子项。使用 DWORD 值为 0 的项名称 AllowStrongNameBypass。在 HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoft.NETFramework 项下创建相同的子项。
对单个应用程序禁用强名称跳过功能
打开或创建应用程序配置文件。
有关此文件的更多信息,请参见应用程序配置文件。
添加下面的项:
<configuration>
<runtime>
< bypassTrustedAppStrongNames enabled="false" />
</runtime>
</configuration>
可通过移除该配置文件设置或将该属性设置为“true”为该应用程序恢复跳过功能。
说明:
只有在已为计算机启用跳过功能的情况下,才能为应用程序打开和关闭强名称验证。如果已为计算机关闭跳过功能,则将对所有应用程序验证强名称,并且不能对单个应用程序跳过验证。