在使用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 %windir%\assembly\GAC\Office\11.0.0.0__71e9bce111e9429c
  copy Office.dll d:\

  REM 复制 引用Microsoft.Office.Interop.Word的动态库
  cd %windir%\assembly\GAC\Microsoft.Office.Interop.Word\11.0.0.0__71e9bce111e9429c
  copy Microsoft.Office.Interop.Word.dll d:\

  REM 复制 引用VBIDE的动态库
  cd %windir%\assembly\GAC\Microsoft.Vbe.Interop\11.0.0.0__71e9bce111e9429c
  copy Microsoft.Vbe.Interop.dll d:\

  2. 双击执行该批处理文件,就将引用的动态库复制到 d:\,以方便添加引用。最好到MS-DOS方式下执行,以便切确知道是否真正拷贝。

  3. 直接右击“解决方案”的引用-->添加引用-->在“浏览”页面,在D:\找到选择它们,按“确定”就将其加入到引用中

  更多内容,可以参考http://msdn.microsoft.com/zh-cn/library/aa159923(office.11).aspx

 
 注意:以上文件是部署或者注册了的,它们位于%windir%\assembly\GAC或者%windir%\assembly\GAC_MSIL下
面,使用windows上的搜索是找不到的。要想找到它们,需要切换到MS-DOS命令下(开始--运行,输入cmd按回车,或者开始--程序--附件
--命令提示符),然后再使用 cd
c:\,转到在c:\根目录下,使用以下3个命令,将文件所在的位置输出追加到文件aa.bat中,然后使用记事本编辑到上面需要的方式。

  dir Office.dll /s >> aa.bat
  dir Microsoft.Office.Interop.Word.dll /s >> aa.bat
  dir Microsoft.Vbe.Interop.dll /s >> aa.bat

VS编程中找不到Microsoft.Office.Core、Microsoft.Office.Interop.Word和VBIDE的更多相关文章

  1. 找不到引用microsoft.office.core解决办法 via mrcjiong

    在控制面板中,选择"添加删除程序",找到office ,选择"更改",在对话框中选择"添加删除功能",然后选择自定义安装,添加上office ...

  2. 关于C#低版本升级高版本时,项目中引用Microsoft.Office.Interop.Word,程序提示不存在类型或命名空间名office.

    Report.cs里using Microsoft.Office.Interop.Word;就会报错:编译器错误消息: CS0234: 命名空间“Microsoft.Office”中不存在类型或命名空 ...

  3. Microsoft.VisualC 命名空间包含支持用 c + + 语言的代码生成和编译的类。 混合编程中使用COM接口指针

    Microsoft.VisualC 命名空间包含支持用 c + + 语言的代码生成和编译的类. Microsoft.VisualC.StlClr Unmanaged Code 和 Managed Co ...

  4. 2015.5.21 VS2010中引用Word组件后提示 类型“Microsoft.Office.Interop.Word.ApplicationClass”未定义构造函数 解决方法

    wordApp = new Word.ApplicationClass();//这句在VS2005中没问题,在2010中会报错. 解决方法:在资源管理器 “引用”项的"Microsoft.O ...

  5. (转)无法将类型为“Microsoft.Office.Interop.Word.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Word._Application”。此操作失败的原因是对 IID 为“{00020970-

    HRESULT:0x80030002 无法将类型为“Microsoft.Office.Interop.Word.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft ...

  6. C#引用Office.word出错的解决办法-无法嵌入互操作类型“Microsoft.Office.Interop.Word.ApplicationClass” 【转】

    本文章转自 suchso 1.系统找不到 Microsoft.Office.Interop.Word" "Could not load file or assembly 'Micr ...

  7. 在 sys.servers 中找不到服务器的解决办法,自己解决的

    一开始提示,在服务器中找不到在 sys.servers 中找不到服务器 'QPAccountsDBLink',先用select * from sys.servers  ,发现只能查到一个服务器名称,后 ...

  8. 使用Word API打开Word文档 ASP.NET编程中常用到的27个函数集

    使用Word API(非Openxml)打开Word文档简单示例(必须安装Word) 首先需要引入参照Microsoft.Office.Interop.Word 代码示例如下: public void ...

  9. Microsoft Office ->> 完整卸载Office 2007

    今天用GHOST安装了Windows 8.1,结果发现预装了Office 2007,而且这个GHOST系统的Office 2007还不是很正规的安装手法安装的.它没有在注册表中注册.在打开控制面板后发 ...

随机推荐

  1. ***git 本地提交后如果让服务器上的GIT 自动更新拉取

    Q: 最近配了个服务器,用的GIT,本地提交后服务器必须再拉取一下才能更新出来..求个提交后自动更新的方法 A: 最佳工具 git hook post-update.sample 改名为post-up ...

  2. hdu 1005:Number Sequence(水题)

    Number Sequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  3. poj 2635 千进制

    转自:http://www.cnblogs.com/kuangbin/archive/2012/04/01/2429463.html 大致题意: 给定一个大数K,K是两个大素数的乘积的值. 再给定一个 ...

  4. 电赛菜鸟营培训(五)——OLED屏幕的使用

    一.取模软件的使用 首先进行设置 然后可以生成显示这个字母的代码,列优先,先按列画8行,然后再继续画下一列.汉字为16*16,字母为8*8,对应生成相应个数的ox代码. 二.STM32烤写OLED # ...

  5. CC2540开发板学习笔记(二)——按键

    一.实验内容 用按键S1控制LED1的亮和灭 二.实验过程 1.电路原理: 可以看出,当S按下P0.0和P0.1接地,反之则接高电压. 2.寄存器使用: 依旧应该首先进行3个基本寄存器的设定,对LED ...

  6. Laravel环境配置之安装Homestead

    laravel requirements: PHP >= 5.5.9   (机器上yum安装的是5.3.3) OpenSSL PHP Extension PDO PHP Extension Mb ...

  7. SCU3312 Stockholm Knights(最大流)

    题目大概说一个n×m的格子中,'.'代表空地,'#'代表障碍,'K'代表骑士,'D'代表目的地.骑士每走一步花一条,每一步可以往(+2,+3)(-2,+3)...八个方向走,问占领所有目的地最少要几天 ...

  8. 使用HttpsURLConnection发送POST请求

    重写X509TrustManager private static TrustManager myX509TrustManager = new X509TrustManager() { @Overri ...

  9. 【BZOJ】1601: [Usaco2008 Oct]灌水(kruskal)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1601 很水的题,但是一开始我看成最短路了T_T 果断错. 我们想,要求连通,对,连通!连通的价值最小 ...

  10. 【POJ】2234 Matches Game(博弈论)

    http://poj.org/problem?id=2234 博弈论真是博大精深orz 首先我们仔细分析很容易分析出来,当只有一堆的时候,先手必胜:两堆并且相同的时候,先手必败,反之必胜. 根据博弈论 ...