在服务器核心计算机上安装 Microsoft Office 2007

Posted

技术标签:

【中文标题】在服务器核心计算机上安装 Microsoft Office 2007【英文标题】:Installing Microsoft Office 2007 on a Server Core Machine 【发布时间】:2010-09-23 06:03:20 【问题描述】:

我有一个 Windows 服务(目前在 Windows 2003 Server 下运行),它需要使用自动化与一些 Word 文档进行交互。此服务需要移动到新服务器。

是否可以在 Windows 2008 R2 Server Core Machine 中安装和调用 word 文档?

【问题讨论】:

让我说清楚: 1) 我对这段代码并不感到自豪(相信我),但不幸的是它在 Win2003Svr 中运行良好很长时间。 2) 我知道不支持。 3) 如果有人链接 msdn 文章或官方博客说无法完成,我将给予 50 分。 4)请节省您的时间,不要给我任何 lmgtfy 链接 【参考方案1】:

作为服务运行时的常规 Word 自动化 is not supported(包括 ASP.NET 之类的东西)。它是一个桌面客户端应用程序,带有用于自动化该应用程序的 API,不是 Word 子系统的 API。

可能尝试查看Word Automation Services,但请注意这是一个 SharePoint Server 2010 组件。

我强烈建议寻找替代方案,例如用于编写 Word 文档或其他文件格式的各种工具(有些免费,有些不是)。

这似乎没有实际意义,但我怀疑 Word 是否可以在服务器核心上运行。它被大量剥离以供范围服务器使用,并且会丢失许多桌面客户端应用程序想要使用的东西。

【讨论】:

【参考方案2】:

我建议您使用Open XML SDK 2.0 for Microsoft Office。在XML in Office Developer Portal、"How to: Word Processing with respect of Open XML SDK 2.0" 和http://openxmldeveloper.org/ 上,您会发现很多如何使用 Open XML SDK 2.0 的示例。

Open XML SDK 2.0 是专门用于服务器的技术。您根本不需要在服务器上安装Office,就可以在服务器上阅读、修改等办公文档。一开始,从 Word 自动化切换到 Open XML SDK 似乎很困难,但我建议您花一点时间来学习这项技术。在很短的时间内,您将幸运地在服务器上使用它。您还可以在 codeplex.com 上找到一些有趣的代码示例和实用程序(只需搜索“Open XML”)。例如看http://openxmldemos.codeplex.com/的Demo 04。

【讨论】:

【参考方案3】:

是的,只需使用静默安装即可在您的 Server Core 机器上安装 Office 2007 - 请参阅 TechNet 的 Office 资源工具包了解部署选项。几点注意事项:

    唯一不直接支持服务器核心安装的 Office 组件是 Project Server 和 SharePoint Server。他们甚至不会安装。 您不能调用任何需要客户端应用程序.Visible = True 的 Word 命令。这将导致失败。 使用 PowerShell 自动化 Word 可能是使用 Server Core 和 Office 最简单的方法。对于某些 COM 功能,您可能需要创建一个 .NET 包装器,而不是直接从 PS 调用(最值得注意的是 WordBasic 调用)。 以前都说过不要在服务器上使用 Office 自动化 - 但这不是您需要的建议。所以,请务必阅读:Considerations for server-side Automation of Office

【讨论】:

【参考方案4】:

注意 Marcs 关于它不受支持的警告(以及 Oleg 提供的替代方案)。

由于办公自动化(至少听起来像您使用它的方式)基本上调用程序(您在任务管理器中看到它)但是将可见性设置为 false,它不会在服务器核心上运行。您必须能够安装和运行 office(您不能在核心上运行)。

http://technet.microsoft.com/en-us/library/dd184076.aspx “你也不能用它来运行 Microsoft Office System 应用程序或 Microsoft Office SharePoint Server。你不能(或至少不应该)用它来运行你内部开发的自定义应用程序”。

【讨论】:

Open XML SDK 2.0 不会调用任何 Office 程序。它可以像处理 XML 文件一样处理 DOCX 文档,但涉及简化的 Open XML SDK 2.0 API。所以它应该可以在 Windows 2008 R2 Server Core 上工作并得到支持。

以上是关于在服务器核心计算机上安装 Microsoft Office 2007的主要内容,如果未能解决你的问题,请参考以下文章

警惕:黑客在数千个Microsoft SQL 服务器上安装秘密后门

未在本地计算机上注册“Microsoft.Jet.OleDb.4.0”提供程序。解决办法

安装Microsoft SQL Server 2005时提示“此计算机上没有与从安装软件包匹配的产品”?

.Net 核心服务在发布到 IIS 后不可用

关于“找不到附属汇编 Microsoft.VC90.CRT,上一个错误是 参照的汇编没有安装在系统上。”的解决

如何在Microsoft Exchange 2013上安装https证书