这是我最近遇到的一个故事和一个可能的答案(?)我只是想分享这个信息,因为我在 stackoverflow 上还找不到这个信息。
我将我的解决方案从 VS2008、WinXP、32 位升级到 VS2010、Win7、64 位。
当我对生成新 RESX 文件的 WinForms 进行修改或更新 RESX 文件时,我遇到了问题。
使用 VS2010 进行调试构建没有问题。然而,对于发布模式,我必须使用延迟签名过程。现在该过程出现错误new使用 VS2010 生成的 RESX 文件。 (再次注意,旧的 RESX 文件不会显示此行为)
(CoreResGen 目标)
Search.resx(176,5):错误 RG0000:无法加载文件或程序集 xxx.Controls,Version=1.5 0,Culture=neutral,PublicKeyToken=7acfcc7eabace048' 或其依赖项之一。强名称验证失败。 (超出 HRESULT:0x8013141A)第 176 行,位置 5。
以下是我在网上找到的一些资料
Link https://devblogs.microsoft.com/visualstudio/resgen-exe-error-an-attempt-was-made-to-load-a-program-with-an-incorrect-format/
我想知道其他人是否遇到过这个问题以及他们采取了哪些解决方法?
没有解决方法就意味着等待 VS2010 SP1 的发布。
不幸的是,我正在使用可能已编译为 32 位的第 3 方程序集。
(我无法控制他们的构建过程)
-- 2010 年 8 月 11 日
一些附加信息。
控件本身没有签名或延迟签名。但该控件正在使用延迟签名程序集中的组件。两个组件都在同一解决方案中。
当我将使用程序集更改为针对 4.0 框架时,问题得到解决。
当我针对 3.5 框架时,出现错误。