如何使用已安装的Office版本在WinForms应用程序中查看Microsoft Office文档?

Joh*_*bly 4 c# ms-office winforms

我正在编写一个功能,允许用户快速浏览并快速查看大量word文档.所有用户都将安装Office 2003,2007或2010(这是其他一些功能所必需的).文档(其中大部分将是Word)只需要只读显示.

我尝试在MSDN上使用该示例,其中使用VS2008和Office 2007将office文档加载到Web浏览器组件中.

Excel电子表格加载得相当好,但Word文档出现在一个单独的窗口中,虽然没有工具栏只显示文档的正文.由于该文章自2007年以来尚未更新,因此似乎微软已停止支持这种呈现办公文档的方式.

任何人都可以建议如何成功地工作?

我也看过像aspose.net这样的第三方组件看起来很棒,但是许可证费用非常大,考虑到所有用户都已经安装了Office,这似乎有些过分.

Joh*_*bly 6

我在这个msdn论坛上找到了解决方案.

问题是我使用的测试.NET项目是作为"任何CPU"构建的,它在64位Windows上作为64位进程运行.

我安装了32位版本的Office 2007.

将.NET项目配置更改为x86,WebBrowser组件能够在其自己的窗口中托管Word文档.

我仍然不明白为什么即使在作为任何CPU运行时Excel也能够加载到WebBrowser中.