相关疑难解决方法(0)

ASP.NET MVC应用程序中的"错误的二进制签名"

当它部署到64位Windows 2008服务器盒时,我们在ASP.NET MVC应用程序的某些页面上收到上述错误.它在我们的开发机器上工作正常,尽管它们是32位XP.只是想知道是否有人曾经遇到过此事,并有任何建议吗?详情如下:

坏二进制签名.(HRESULT异常:0x80131192)

描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.

异常详细信息:System.Runtime.InteropServices.COMException:错误的二进制签名.(HRESULT异常:0x80131192)

所有项目都设置为为任何CPU编译,并在发布模式下编译.ASP.NET网站已预编译,预编译版本位于64位Windows 2008 TeamCity构建代理上.提前致谢.

编辑

我们仍然受此困扰.我使用corflags.exe查看了网站bin目录中的所有二进制文件.没有设置32BIT标志,并且所有的CorFlags值都为9,除了Antlr3.Runtime.dll,其值为1.该问题仅影响某些页面,似乎是使用FluentValidation的那些(包括FluentValidation.Mvc)和FluentValidation.xValIntegration程序集).当使用corflags.exe进行检查时,这些都不会显示任何异常,并且ildasm没有显示奇怪的依赖关系.

在本地构建(32位Windows XP)时,该站点部署并运行正常.在构建代理(64位Windows 2008 Server)上构建时,站点会显示这些错误.该站点以集成管道模式运行,未设置为32位.

堆栈跟踪是:

[COMException (0x80131192): Bad binary signature. (Exception from HRESULT: 0x80131192)]
   ASP.views_user_newinternal_aspx.__RenderContent2(HtmlTextWriter __w, Control parameterContainer) in e:\TeamCity\buildAgent\work\605ee6b4a5d1dd36\...Admin.Mvc\Views\User\NewInternal.aspx:53
   System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +115
   ASP.views_shared_site_master.__Render__control1(HtmlTextWriter __w, Control parameterContainer) in e:\TeamCity\buildAgent\work\605ee6b4a5d1dd36\...Admin.Mvc\Views\Shared\Site.Master:26
   System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +115
   System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) +240
   System.Web.UI.Page.Render(HtmlTextWriter writer) +38
   System.Web.Mvc.ViewPage.Render(HtmlTextWriter writer) +94
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4240
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc 64-bit interop

11
推荐指数
1
解决办法
4239
查看次数

标签 统计

64-bit ×1

asp.net-mvc ×1

interop ×1