首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >移到.NET 4.5。获取“”无法加载文件或程序集_____或其依赖项之一“错误。

移到.NET 4.5。获取“”无法加载文件或程序集_____或其依赖项之一“错误。
EN

Stack Overflow用户
提问于 2014-08-27 09:04:51
回答 1查看 1.2K关注 0票数 2

我刚刚将VS 2008中的一个3.5项目转换为Framework4.5。该网站有两个项目(让我们调用业务和报告)引用。

在VS 2012中,所有内容都与开发with服务器一起工作。但是,当我在本地IIS*上设置它时,我会得到

“无法加载文件或程序集‘报表’或其依赖项之一。试图加载格式不正确的程序。:

我在bin目录中看到报表的dll。我使用了构建到x86并返回到AnyCPU的平台,但是它仍然不起作用。

(我确实将应用程序池的.NET框架版本设置为4.0。)

编辑:有人能帮我解读下面的信息吗?我看到HKEY_LOCAL_MACHINE\Software\Microsoft\Fusion了。但是什么是“融合!EnableLog”呢?我没看到像那样的东西。

程序集绑定日志记录被关闭。若要启用程序集绑定故障日志记录,请将注册表值HKLM\Software\Microsoft\Fusion!EnableLog设置为1。注意:与程序集绑定失败日志记录相关的性能损失。若要关闭此功能,请删除注册表值HKLM\Software\Microsoft\Fusion!EnableLog.。

EN

回答 1

Stack Overflow用户

发布于 2014-08-27 13:14:01

可能该DLL仅适用于32位(x86)构建。

重新构建程序,以x86构建为目标。

然后在IIS中,右键单击为应用程序服务的应用程序池,然后单击“高级设置”。从这里开始,将“启用32位应用程序”的值设置为“True”,然后回收应用程序池并重新启动您的网站,如果您仍然收到错误,请告诉我。

如果您不知道您的网站正在使用哪个应用程序池,请单击“站点”下的“网站”,然后在“操作”窗格中选择“基本设置”选项。从这里您可以看到哪个应用程序池正在为您的应用程序服务,如果需要,您可以更改应用程序池。应用程序池是通过IIS中“Connections”窗格中的“应用程序池”选项来管理的。

我认为如果您是从64位计算机构建的,那么选择“任意CPU”可能会导致64位构建,所以如果引用的DLL是针对x86构建的,那么这可能就是您收到错误消息的原因。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25523061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档