如何在64位操作系统中打开嵌入在Window Forms控件中的Excel(.xlsx)文件

时间:2013-01-21 12:22:17

标签: c# excel browser

我正在尝试使用webbrowser Control在Windows窗体中显示Excel文档。

使用在Codeproject中搜索的代码如何使用WebBrowser [^]在Windows窗体应用程序中集成Excel,并且我能够在webbrowser控件中正确地将32位操作系统中的文件(.xls和.xlsx)显示出来。< / p>

但是当我尝试在64位操作系统中执行代码.xlsx类型的Excel文件没有在webbrowser控件中打开而是打开它们作为普通的excel文件,但.xls文件在webbrowser控件中正确打开。为此,我执行注册脚本以使用以下链接更改注册表设置当您尝试在IE7或IE8中查看2007 Microsoft Office程序文档时会打开一个新窗口,但.xlsx文件总是单独打开,就像Office Excel文件一样,而不是打开它在webbrowser控件中。

目前我使用Microsoft Office 2010软件作为我的办公工具。

请提供解决方案,打开要在webbrowser控件中打开的.xlsx个文件。

1 个答案:

答案 0 :(得分:0)

为了能够在64位进程中嵌入Office,您需要安装64位Office。这意味着您不能拥有32位Office(they can't coexist on the same machine),并且您的32位程序将无法运行。您可以发送两个版本,一个x86和一个x64)并让用户做出选择,或者同时发送两个版本并使用检测CPU位数的启动器启动正确的版本。

顺便说一下,你仍然需要BrowserFlags hack,因为自2007年以来微软不鼓励你这样做。虽然Office 2010仍有ActiveX Document Server支持,但Office团队将取消对某些人的支持指出未来。因此,如果您依赖Office的ActiveX文档服务器支持作为核心功能,则需要提前计划。