Word Automation自动向后兼容Word 2003

时间:2011-11-04 19:41:45

标签: c# ms-word automation office-2003 word-2003

我正在使用C#编写一些Word自动化代码。我在自己的机器上安装了Word 2007(Microsoft.Office.Interop.Word.dll的12.0.0.0版),但我想支持Word 2003(Microsoft.Office.Interop.Word的版本11.0.0.0)。 dll的?)。

没有Word 2003可用,有什么方法可以我的目标,以便我的代码向后兼容?如果没有安装Word 2003,我无法安装PIA可再发行组件包。

3 个答案:

答案 0 :(得分:1)

我很确定在app.config中创建一个bindingRedirect就可以了。

http://msdn.microsoft.com/en-us/library/eftw1fys.aspx

答案 1 :(得分:1)

如果你不介意失去intellisense而你正在使用.Net 4,你可以通过动态完全摆脱PIA。

代码示例:

var type = Type.GetTypeFromProgID("Word.Application");
dynamic word = Activator.CreateInstance(type);
word.visible = true;

答案 2 :(得分:0)

我的解决方案是从安装了Word 2003的计算机中获取Microsoft.Office.Interop.Word.dll和office.dll的副本。这些仅用于构建,以便我的代码可以在具有Word 2003的系统上运行。不理想,但它可以工作。