2011-10-13 124 views
5

我已经安装了Visual Studio 2010和Office 2007。当我进入“添加引用”,然后搜索“办公室互操作”我可以看到,每个指向的12版本和14Microsoft.Office.Interop。*版本12和14之间的区别是什么?

我出现了两次最初尝试版本14的Microsoft.Office.Interop.Word并做了一个快速测试。初始化应用程序,打开文档,关闭文档,退出应用程序并释放COM对象。我的测试是C#4.0中的一个简单的WinForms程序。

WINWORD.EXE在关闭文档时崩溃。

我将引用切换到版本12,并将代码完全保留原样并再次尝试。一切正常。

我已经使用版本12编写了其余的代码,并且没有任何问题。

所以现在我很好奇:在版本12和14中Microsoft.Office.Interop.*中的公开曝光的成员之间有一些细微的差异,但很大程度上存在很多重叠。

实际区别是什么?为什么我的简单测试失败了,即使我有一个相对较新版本的Office?并且在开始互操作项目时,开发人员应选择哪种版本,是否有经验?

回答

13

版本12是Office 2007的互操作性版本,而14是Office 2010. AFAIK除非您真的需要第14版的一些新功能,否则您可以使用较低版本的互操作库,它可以正常工作以适用于所有新版本的办公室。

相关问题