微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

.net – 无法加载文件或程序集“Antlr3.Runtime”或其依赖项之一

我找到了一个类似的问题,但没有解决我的问题.

Could not load file or assembly ‘Antlr3.Runtime’ or one of its
dependencies. This assembly is built by a runtime newer than the
currently loaded runtime and cannot be loaded

我只在IIS中收到此错误.我正在尝试部署到IIS 7.5.我将应用程序池设置为4.0,Integrated.

早些时候一切都很好.安装框架4.5 VS 2012 Express后,我使用MachineKeyCryptography获得了异常.所以我卸载了4.5框架和VS 2012,因为这个混乱正在发生.

我得到的例外情况如下.

Description: An unhandled exception occurred during the execution of
the current web request. Please review the stack trace for more
@R_632_4045@ion about the error and where it originated in the code.

Exception Details: System.BadImageFormatException: Could not load file
or assembly ‘Antlr3.Runtime’ or one of its dependencies. This assembly
is built by a runtime newer than the currently loaded runtime and
cannot be loaded.

Source Error:

An unhandled exception was generated during the execution of the
current web request. @R_632_4045@ion regarding the origin and location of
the exception can be identified using the exception stack trace below.

Assembly Load Trace: The following @R_632_4045@ion can be helpful to
determine why the assembly ‘Antlr3.Runtime’ Could not be loaded.

WRN: Assembly binding logging is turned OFF. To enable assembly bind
failure logging,set the registry value
[HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1. Note: There
is some performance penalty associated with assembly bind failure
logging. To turn this feature off,remove the registry value
[HKLM\Software\Microsoft\Fusion!EnableLog].

Stack Trace:

[BadImageFormatException: Could not load file or assembly
‘Antlr3.Runtime’ or one of its dependencies. This assembly is built by
a runtime newer than the currently loaded runtime and cannot be
loaded.] System.Reflection.Assembly._nLoad(AssemblyName fileName,
String codeBase,Evidence assemblySecurity,Assembly locationHint,
StackCrawlMark& stackMark,Boolean throwOnFileNotFound,Boolean
forIntrospection) +0
System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef,
Evidence assemblySecurity,StackCrawlMark& stackMark,Boolean
forIntrospection) +416
System.Reflection.Assembly.InternalLoad(String assemblyString,Boolean
forIntrospection) +166 System.Reflection.Assembly.Load(String
assemblyString) +35
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String
assemblyName,Boolean starDirective) +190

[ConfigurationErrorsException: Could not load file or assembly
‘Antlr3.Runtime’ or one of its dependencies. This assembly is built by
a runtime newer than the currently loaded runtime and cannot be
loaded.]
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String
assemblyName,Boolean starDirective) +11244040
System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory()
+388 System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo
ai) +232
System.Web.Configuration.AssemblyInfo.get_AssemblyInternal() +48
System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection
compConfig) +210
System.Web.Compilation.buildprovidersCompiler..ctor(VirtualPath
configPath,Boolean supportLocalization,String outputAssemblyName)
+76 System.Web.Compilation.Applicationbuildprovider.GetGlobalAsaxbuildresult(Boolean
isprecompiledApp) +283
System.Web.Compilation.BuildManager.CompileGlobalAsax() +50
System.Web.Compilation.BuildManager.EnsuretopLevelFilesCompiled() +676

[HttpException (0x80004005): Could not load file or assembly
‘Antlr3.Runtime’ or one of its dependencies. This assembly is built by
a runtime newer than the currently loaded runtime and cannot be
loaded.]
System.Web.Compilation.BuildManager.ReportTopLevelCompilationException()
+76 System.Web.Compilation.BuildManager.EnsuretopLevelFilesCompiled()
+1012 System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager
appManager,IApplicationHost appHost,IConfigMapPathFactory
configMapPathFactory,HostingEnvironmentParameters hostingParameters)
+1025

[HttpException (0x80004005): Could not load file or assembly
‘Antlr3.Runtime’ or one of its dependencies. This assembly is built by
a runtime newer than the currently loaded runtime and cannot be
loaded.] System.Web.HttpRuntime.FirstRequestinit(HttpContext
context) +11338038
System.Web.HttpRuntime.EnsureFirstRequestinit(HttpContext context) +88
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest
wr,HttpContext context) +4356276

解决方法

你需要在IIS中更改它的运行时版本.
右键单击虚拟目录
并单击高级设置
将其更改为正确的池设置.我可以说重新安装后你的游泳池设置不正确.

您可以找到该过程

In Application Pools-> Select your site ->Set Application Pool
Defaults -> Select your correct version

如果这不起作用,此时您可以做的首选是从系统中引用框架4卸载所有.Net安装.清理系统,然后重新安装所有内容.

但我发现你使用的是IIS 7.5.因此,您可以发现许多功能变化,需要谨慎处理.您可以尝试在尝试重新安装之前设置应用程序池和其他设置.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐