未能加载文件或程序集

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了未能加载文件或程序集相关的知识,希望对你有一定的参考价值。

写了一个读写Excel的程序,在自己电脑上能用,放到别的电脑上就会报这个错。求解决方案、、

未能加载文件或程序集“Microsoft.Office.Interop.Excel,Version=14.0.0.0,Culter=neutral,PublicKeyToken=71e9bce111e9429c”或他的某一个依赖项。系统找不到指定的文件。

参考技术A 在VS中点开项目下的"引用"
找到Microsoft.Office.Interop.Excel

右键属性
设置COPY LOCAL=TRUE

编译/发布后给别人用追问

不行啊,还是报错、、 这回报的不是Microsoft.Office.Interop.Excel了,现在是Office,但是这个的COPY LOCAL无法修改啊,怎么办? 求指教、、

追答

你把"引用"的非.NET自带的程序集
都设置COPY LOCAL=TRUE

追问

有的选项是灰的,,有什么办法改吗?

追答

什么意思?

追问

有的copy local属性是灰色的,不能修改啊,, 怎么回事?

参考技术B 有可能你的电脑的excel是07以上版本,而对方电脑是03以下版本。不同版本引用的dll不一样哦。追问

那请教一下,该怎么解决呢??

追答

对方的电脑上应该有相应的dll,路径和你引用的类似,把他的dll复制过来重新引用编译试试。
或者你可以在同一个程序中引用多个版本的dll,检测不同电脑的excel版本用不同的代码。

参考技术C 我发布过此类问题的解决方案:
http://hi.baidu.com/rtmd_net/item/e110b7298e19fb3395f62bc0追问

还请问一下,如果运行这个程序的电脑office是2003的,错误提示是“Microsoft.Office.Interop.Excel,Version=14.0.0.0”,我是应该安装2010,版本为14的PIA吗?

追答

这个需要的 类库版本,主要是看你的程序编译时,使用的是什么版本

本回答被提问者采纳
参考技术D 别的电脑可能没这个类库 第5个回答  2014-01-22 他的 机器上没有安装office的软件吧

未处理的异常: 未能加载文件或程序集

未处理的异常: System.IO.FileLoadException: 未能加载文件或程序集“log4net, Versi
on=1.2.9.0, Culture=neutral, PublicKeyToken=b32731d11ce58905”或它的某一个依赖项
。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)
文件名:“log4net, Version=1.2.9.0, Culture=neutral, PublicKeyToken=b32731d11ce58
905”

程序是在VS2008上开发的(WCF),但是在装了.net framwork3.5的机器上运行就会抛出上面的异常导致应用程序关闭。
求各位大侠给出解决办法,跪谢!!!!

参考技术A 你应该先启动Host,再启动Client,你可能直接运行程序了,而Host没有在Client之前启动

以上是关于未能加载文件或程序集的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio 未能加载文件或程序集

未能加载文件或程序集“FredCK.FCKeditorV2

未能加载的文件或程序集.怎么解决

未能加载的文件或程序集 怎么解决

未能加载文件或程序集“Microsoft.VisualStudio.Web.Runtime 怎么解决?

未能加载的文件或程序集.怎么解决