C# OFFICE EXCEL WORD
在使用vs2005、 vs2008、 vs2010 制作包含 word等office的应用程序时,有时找不到对Microsoft.Office.Core、Microsoft.Office.Interop.Word和VBIDE 三个文件的引用,此时,如果已经安装了office 2003,那么可能是选择“典型安装”或者是“最小化安装”,那需要从“控制面板”中将其删除,然后再次安装,并选择“完全安装”,安装之后再使用以下两种方法之一即可。
在选择“完全安装”office 2003 后,使用以下两种方法之一即可。
方法一
首先在“解决方案中”展开各个项目
1. 解决引用Microsoft.Office.Core –> Interop.Microsoft.Office.Core.dll
先在各个项目“引用”中,删除对Microsoft.Office.Core的引用,然后再右击引用–>添加引用–>在COM页面的下拉框中,找到Microsoft Office 11.0 Object Library ,按“确定” 就将其加入到 引用
2. 解决引用Microsoft.Office.Interop.Word –> Microsoft.Office.Interop.Word.dll
不用删除对Microsoft.Office.Interop.Word 的引用,直接右击引用–>添加引用–>在COM页面的下拉框中,找到Microsoft Word 11.0 Object Library ,按“确定” 就将其加入到 引用中
3. 解决引用VBIDE –> Microsoft.Vbe.Interop.dll
完全安装了office 2003之后,VBIDE 的引用一般就自动修正好了。
方法二
编辑一个批处理文件,将几个动态库文件,复制到某一个根文件夹,比如D:\以方便引用。然后右击引用–>添加引用–>“浏览”页面,从中找到它们按“确定”就将其加入到引用中
Interop.Microsoft.Office.Core.dll或者office.dll,Microsoft.Office.Interop.Word.dll,Microsoft.Vbe.Interop.dll
1. 使用记事本 编辑一个批处理文件比如 cwv.bat,内容如下:
REM 复制 引用Microsoft.Office.Core的动态库
cd C:\windows\assembly\GAC\Office\12.0.0.0__71e9bce111e9429c
copy Office.dll d:\
REM 复制 引用Microsoft.Office.Interop.Word的动态库
cd C:\windows\assembly\GAC\Microsoft.Office.Interop.Word\12.0.0.0__71e9bce111e9429c
copy Microsoft.Office.Interop.Word.dll d:\
REM 复制 引用VBIDE的动态库
cd C:\windows\assembly\GAC\Microsoft.Vbe.Interop\12.0.0.0__71e9bce111e9429c
copy Microsoft.Vbe.Interop.dll d:\
查看路径:
1、如果不知道具体的12.0.0.0__71e9bce111e9429c名称,可以使用下面命令查看。
首先:开始--运行--输入 CMD 调出命令提示行
然后:在命令提示行中执行Dos命令
cd C:\WINDOWS\assembly \\进入ASSEMBLY目录
dir Integration4sharepoint.dll /s \\搜索DLL 并找到DLL位置
copy C:\WINDOWS\assembly\GAC\Integration4sharepoint\1.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Excel.dll D: \\copy到对应的D目录
2、在解决方案中添加引用Microsoft.Office.Core --> Interop.Microsoft.Office.Core.dll; 然后在对象浏览器中查看, 可以看到Microsoft.Office.Core.dll的完整路径名称。
然后在CMD中输入 copy 完整dll路径即可。
这样Integration4sharepoint.dll 文件就被复制到了D盘根目录下了 ;
2. 双击执行该批处理文件,就将引用的动态库复制到 d:\,以方便添加引用。最好到MS-DOS方式下执行,以便切确知道是否真正拷贝。
3. 直接右击“解决方案”的引用–>添加引用–>在“浏览”页面,在D:\找到选择它们,按“确定”就将其加入到引用中
注册DLL的方法:
Regsvr 32命令是Windows中控件文件(如扩展名为DLL、OCX、CPL的文件)的注册和反注册工具。
命令格式:Regsvr32 [/s] [/n] [/i[:cmdline]] dllname
/u 卸载安装的控件,卸载服务器注册;
/s 注册成功后不显示操作成功信息框;
/i 调用DllInstall函数并把可选参数[cmdline]传给它,当使用/u时用来卸载DLL;
/n 不调用DllRegisterServer,该参数必须和/i一起使用。
实例:
要手工注册“E:\CPCW.dll”,只需在“开始→运行”中键入“Regsvr32 E:\CPCW.dll”,单击“确定”按钮后会弹出提示信息“DllRegisterServer in CPCW.dll succeeded”,说明组件注册成功;如果要卸载此组件,在“开始→运行”中键入“Regsvr32 /u E:\CPCW.dll”即可。
资料来源于下面2个网站
http://zhidao.baidu.com/link?url=-tVP1r0ZnUkXxoZlfHJHOFhCOnM_N0SLK-d1Grr8xw0CDPcJqjflXPL5UenszH7RMbBw22J91cifmXoyNrq3lcJAlw2zH2G5-a6Y0Q2x5Fi
http://blog.csdn.net/wjz1029/article/details/25993747