遇到这个错误终于在这里找到了答案,感谢 junjieking
原文网址:http://blog.csdn.net/junjieking/article/details/6273580
首先是更改office2003的安装,参见msdn
http://msdn.microsoft.com/zh-cn/library/aa159923(office.11).aspx#EHAA
这样,你的引用中就会出现以下内容(当然有可能以前就有了,不用更改office2003的安装)
(1).net中有Microsoft.Office.Interop.PowerPoint, Office
(2)com中有Microsoft.Office 11.0(或12.0) Object library
Microsoft.Office.Interop.PowerPoint肯定是要添加的.
但Office和Microsoft.Office 11.0(或12.0) Object library添加谁?
只添加Office足以!
实践证明,
(1)如果只添加Microsoft.Office 11.0(或12.0) Object library,会出现下面的错误:
错误 1 类型“Microsoft.Office.Core.MsoTriState”在未被引用的程序集中定义。必须添加对程序集“office, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c”的引用
(2)如果Office和Microsoft.Office 11.0(或12.0) Object library都添加,就会出现下面的错误:
错误 1 类型“Microsoft.Office.Core.MsoTriState”同时存在于“E:/Program Files/Microsoft Visual Studio 9.0/Visual Studio Tools for Office/PIA/Office12/Office.dll”和“C:/Documents and Settings/Administrator/我的文档/Visual Studio 2008/Projects/PPTPaser/ConsoleApplication1/obj/Debug/Interop.Microsoft.Office.Core.dll”中
原因是MsoTriState在两个dll中都出现了.
正确做法:只添加Office引用即可