未能加载文件或程序集“MWArray”或它的某一个依赖项。试图加载格式不正确的程序。
发表在ASP.NET图书答疑 2013-03-15
是否精华
版块置顶:
我在引用外部的一个NWArray.dll时出现如下警告,导致页面无法运行

[strong]未能加载文件或程序集“MWArray”或它的某一个依赖项。试图加载格式不正确的程序[/strong]
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.BadImageFormatException: 未能加载文件或程序集“MWArray”或它的某一个依赖项。试图加载格式不正确的程序。

源错误: 

执行当前 Web 请求期间生成了未经处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。  

程序集加载跟踪: 下列信息有助于确定程序集“MWArray”未能加载的原因。


警告: 程序集绑定日志记录被关闭。
要启用程序集绑定失败日志记录,请将注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD)设置为 1。
注意: 会有一些与程序集绑定失败日志记录关联的性能损失。
要关闭此功能,请移除注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog]。

 

堆栈跟踪: 


[BadImageFormatException: 未能加载文件或程序集“MWArray”或它的某一个依赖项。试图加载格式不正确的程序。]
   System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +0
   System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +39
   System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection, Boolean suppressSecurityChecks) +132
   System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +144
   System.Reflection.Assembly.Load(String assemblyString) +28
   System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +46

[ConfigurationErrorsException: 未能加载文件或程序集“MWArray”或它的某一个依赖项。试图加载格式不正确的程序。]
   System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +618
   System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +209
   System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) +130
   System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +178
   System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() +94
   System.Web.Compilation.BuildManager.CallPreStartInitMethods() +332
   System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +677

[HttpException (0x80004005): 未能加载文件或程序集“MWArray”或它的某一个依赖项。试图加载格式不正确的程序。]
   System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9088892
   System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +97
   System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) +258

 
请问这是怎么回事。并且这个问题导致了我其他本可以跑通的程序无法运行。
分享到:
精彩评论 4
小科_mrkj
学分:43 LV2
2013-03-16
沙发
读者朋友:
    您好,你用Regsvr32命令注册 一下这个dll文件,然后再引用试一下。
sweet_zs
学分:0 LV1
TA的每日心情
加油每一天
2020-10-18 13:59:59
2013-03-18
板凳
[FIELDSET][LEGEND]引自:1楼[/LEGEND]
读者朋友:
    您好,你用Regsvr32命令注册 一下这个dll文件,然后再引用试一下。
[/FIELDSET]

回复:感谢小科老师的回复。 我按照您的提示做了, 但是未能找到入口点DllRegisterServer.
      
      后来我思考了一下。 个人觉得应该不是未注册dll的原因 。 因为相同的程序,我放在控制台程序背景下,能顺利运行,并且dll可用 , 但是网页程序环境下,依旧有如此警告,我想的是不是因为网页程序的环境配置问题?
   
小科_mrkj
学分:43 LV2
2013-03-20
地板
读者朋友:
    您好,这个应该不是网页配置的问题,无法注册说明dll本身不完整,看看需不需要安装或者重新下载。
sweet_zs
学分:0 LV1
TA的每日心情
加油每一天
2020-10-18 13:59:59
2013-04-03
4L
[FIELDSET][LEGEND]引自:3楼[/LEGEND]
读者朋友:
    您好,这个应该不是网页配置的问题,无法注册说明dll本身不完整,看看需不需要安装或者重新下载。
[/FIELDSET]

回复:
  谢谢老师的提示,小柯老师经验非常丰富,这确实是dll本身的问题。我机器是64位的。可能由于这个.dll有64位,32位两种版本。可能这个dll不太完善。其64位版本会出现如上述错误,32位的则运行正常。在此,非常感谢小科老师耐心的回复!
首页上一页 1 下一页尾页 4 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照