未能加载文件或程序集“Office, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f1

时间:2021-11-26 02:53:50
异常详细信息: System.IO.FileLoadException: 未能加载文件或程序集“Office, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)

源错误: 


行 12:     public class ExcelUtil
行 13:     {
行 14:         public Excel.Application m_xlApp = null;
行 15: 
行 16:         /// <summary>   

源文件: e:\webroot\DYSystem\Page\App_Code\File\ExcelUtil.cs    行: 14 

程序集加载跟踪: 下列信息有助于确定程序集“Office, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”未能加载的原因。


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

堆栈跟踪: 


[FileLoadException: 未能加载文件或程序集“Office, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)]
   File.ExcelUtil..ctor() in e:\webroot\DYSystem\Page\App_Code\File\ExcelUtil.cs:14
   BusManage_Task_Device_List.btnToExcel_Click(Object sender, EventArgs e) in e:\webroot\DYSystem\Page\BusManage\Task_Device_List.aspx.cs:173
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +118
   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +112
   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5563

版本信息: Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.0.30319.272

20 个解决方案

#1


求高人指点啊

#2


引用的dll的版本不匹配。。

#3


没安装相应版本的office.

#4


具体怎么判断哪个版本

#5


本机调试对,网站上就出现了上边的错误

#6


可以讲具体点吗

#7


引用 5 楼 hebeichouxiaoya 的回复:
本机调试对,网站上就出现了上边的错误


服务器上根本就没装Office吧。

#8


7.0.3300.0 好像是Office 2007

#9


我安装的就是office 2007

#10


哪位能给出具体的解决方法谢谢了

#11


应该不是没有权限,没有权限的错误不同。

你项目中引用Office的地方,右键菜单中的属性,Copy local选择true.编译后将bin中的所有dll deploy

#12


我是新手,你说的这个我没理解,不知道具体咋改,能加你QQ吗,我的是624416304

#13


dll没引用吧!

#14


我引用了,本机调试对,但是放到网站上就出错了,现在不知道从哪里下手对于这个问题

#15


没安装office或者office版本和开发时引用的版本不一致.你可以用NPOI,myxls,试试.

目标机器不需要安装office也可以

#16


问题解决,谢谢各位的热心帮助,问题的根本就是引用的dll文件跟实际安装的excel的版本不一致,重新加载后就解决了,详细的解决办法我待会上传上去

#17


转自:http://www.cnblogs.com/kingkongv/archive/2012/08/25/2656982.html
.导出Excel程序调试起来很正常,发布到服务器上却出错。 

错误:未能加载文件或程序集“Office, Version=2.2.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)

  原因:程序中使用的Excel.dll是office2003的程序集生成的, 我服务器上安装的是office2007,版本不匹配。 

 解决方案:把office2007目录下的Excel.exe重新生成Excel.dll  ,工具是TlbImp.exe ,安装Visual Studio的各版本都有。 

   方法:1.本人的是VS2010,TlbImp.exe在目录G:\Program Files\Microsoft SDKs\Windows\v7.0A\bin下,在系统控制台转到这个路径,把Excel.exe也拷贝到这个路径下,命令:TlbImp.exe Excel.exe    如图:



在路径下可以找到已经生成的Excel.dll 。好那就拷贝到Bin目录下,加入到项目引用中,调试成功,错误消失 。

备注:此方法是转载,如有需要请注明出处,再次感谢原作者,和给我提供帮助的各位好友

#18


wps是不是也不会被应用?只能安装office

#19


这个是.net FramWork的问题,把4.0 的换成2.0的就可以了

#20


我也碰到同样问题,.iis里,把4.0 的换成2.0的就可以了

#1


求高人指点啊

#2


引用的dll的版本不匹配。。

#3


没安装相应版本的office.

#4


具体怎么判断哪个版本

#5


本机调试对,网站上就出现了上边的错误

#6


可以讲具体点吗

#7


引用 5 楼 hebeichouxiaoya 的回复:
本机调试对,网站上就出现了上边的错误


服务器上根本就没装Office吧。

#8


7.0.3300.0 好像是Office 2007

#9


我安装的就是office 2007

#10


哪位能给出具体的解决方法谢谢了

#11


应该不是没有权限,没有权限的错误不同。

你项目中引用Office的地方,右键菜单中的属性,Copy local选择true.编译后将bin中的所有dll deploy

#12


我是新手,你说的这个我没理解,不知道具体咋改,能加你QQ吗,我的是624416304

#13


dll没引用吧!

#14


我引用了,本机调试对,但是放到网站上就出错了,现在不知道从哪里下手对于这个问题

#15


没安装office或者office版本和开发时引用的版本不一致.你可以用NPOI,myxls,试试.

目标机器不需要安装office也可以

#16


问题解决,谢谢各位的热心帮助,问题的根本就是引用的dll文件跟实际安装的excel的版本不一致,重新加载后就解决了,详细的解决办法我待会上传上去

#17


转自:http://www.cnblogs.com/kingkongv/archive/2012/08/25/2656982.html
.导出Excel程序调试起来很正常,发布到服务器上却出错。 

错误:未能加载文件或程序集“Office, Version=2.2.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)

  原因:程序中使用的Excel.dll是office2003的程序集生成的, 我服务器上安装的是office2007,版本不匹配。 

 解决方案:把office2007目录下的Excel.exe重新生成Excel.dll  ,工具是TlbImp.exe ,安装Visual Studio的各版本都有。 

   方法:1.本人的是VS2010,TlbImp.exe在目录G:\Program Files\Microsoft SDKs\Windows\v7.0A\bin下,在系统控制台转到这个路径,把Excel.exe也拷贝到这个路径下,命令:TlbImp.exe Excel.exe    如图:



在路径下可以找到已经生成的Excel.dll 。好那就拷贝到Bin目录下,加入到项目引用中,调试成功,错误消失 。

备注:此方法是转载,如有需要请注明出处,再次感谢原作者,和给我提供帮助的各位好友

#18


wps是不是也不会被应用?只能安装office

#19


这个是.net FramWork的问题,把4.0 的换成2.0的就可以了

#20


我也碰到同样问题,.iis里,把4.0 的换成2.0的就可以了

#21


相关文章