日期:2014-05-17  浏览次数:20784 次

求教excel.dll在引用时出现的问题
开发环境:win7(64)、vs2010、office2010
引用了一款开源的打印组件,其中除了组件本身的dll,还带了interop.excell.dll(版本号为1.3.0)、Interop.Microsoft.Office.Core.dll,Interop.VBIDE.dll三个相关组件

现在问题是,我在程序中引用该打印组件时,只要是遇到调用excell的地方,就会报  “未能加载文件或程序集“Interop.Office, Version=2.1.0.0, Culture=neutral, PublicKeyToken=null”或它的某一个依赖项。系统找不到指定的文件。”从信息上看,excell.dll的地址是在“C:\Program Files (x86)\Microsoft Visual Studio 10.0\Visual Studio Tools for Office\PIA”中的office2010自带的dll,而不是在/bin/debug目录下老版的dll,这是为啥?我明明已经引用了打印组件自带的老版的dll,而且,这几个dll我都拷贝到了.exe所在的目录下了的呀!

请各位多多赐教,不胜感谢!

------解决方案--------------------
学习中,给你顶起来!
------解决方案--------------------
添加引用---COM---Microsoft Office 11.0 Object Library  (不过office 2010版本会不一样吧)

 代码里。using Microsoft.Office.Interop.Excel; 
        using Microsoft.Office.Interop.Word; 
 
这个你用了没有。

------解决方案--------------------
添加引用   Com组件   然后添加引用

如果是03的话
using Microsoft.Office.Core;
using Excel;
using Word;

若是07
using Microsoft.Office.Interop;
using Microsoft.Office.Interop.Excel;
using Microsoft.Office.Interop.Word;
------解决方案--------------------
using Excel = Microsoft.Office.Interop.Excel;
using Word = Microsoft.Office.Interop.Word;

在网上下Microsoft.Office.Interop.Excel.dll 和 Microsoft.Office.Interop.Word.dll,引用一下就行了,我就是这样弄的。
------解决方案--------------------
   你试试把老版的interop.excell.dll 放在system32文件夹下面试试。
------解决方案--------------------
参考:
How to: Install Office Primary Interop Assemblies

你的机器没有安装PIA程序集导致的,按照上面那个提示,去下载安装一下吧。

To download the PIAs for the 2007 Microsoft Office system, see 
http://go.microsoft.com/fwlink/?LinkId=72637
------解决方案--------------------
11对应着2003,12 对应着2007.删除额外的EXCEL
bin目录添加dll文件