C#编程生成的Word2007版本如何兼容Word2003?(
终极管理员 知识笔记 124阅读
在Word2003中用C #编写了一个报表生成程序)。现在大家都换成了Office2007,升级了程序,发现生成的文档后缀都是docx。Office 2007的Word文档格式是Microsoft OpenOffice XML格式(。docx),与旧版本的Office不兼容。Word2007的文档格式与Word97~2003的二进制文档格式有着本质的区别。Office 2007的推出充分实现了开放XML的概念。Word、Excel
span style="font-size: 10pt; font-family: 宋体">、PowerPoint 文档已经默认保存为压缩的 XML 格式,所以其大小也大大减小了。也就是说B/S模式下,客户端下载下生成的docx文件后,需要安装Office 2007,或者安装 Office 2007 Compatibility Pack for Windows才能打开。有手动更改到2003兼容模式的办法:

单击Word 2007左上角的“Office按钮”,在展开的菜单中单击“Word选项”按钮打开“Word选项”,接着打开“保存”标签页,设置“将文件保存为此格式”下拉列表为“Word 97-2003 文档(.doc)”,这样的话以后就会默认保存为doc格式了。
但这样并不方便。我们需要的最好是能直接在服务器上生成能被2003打开的doc格式的文件。

这样保存的是默认的文档格式,2007下为docx。
要存为doc格式,关键在与SaveAs的第二个参数上,设置文档的保存格式。可以是任何 WdSaveFormat 值。要以另一种格式保存文档,请为 SaveFormat 属性指定适当的值。
好了,重新运行程序,生成的文档为doc格式,放到2003下打开,ok没问题了。
参考资料:
SaveAs 方法:(VS.80).aspx
WdSaveFormat 枚举值(VS.80).aspx不过这个估计是Word2003的,2007的值比这个多