Windows services 在Server 2008上通过Windows服务自动化Office

Windows services 在Server 2008上通过Windows服务自动化Office,windows-services,windows-server-2008,ms-office,dcom,comexception,Windows Services,Windows Server 2008,Ms Office,Dcom,Comexception,我们有一个在2003服务器上运行的Windows服务。它使用Word Interop打开一个源Word文档,然后使用它执行一些操作。Excel和PowerPoint文件也是如此 最近,我们尝试将此服务转移到Windows 2008服务器上,但遇到了实际问题 位于Microsoft.Office.Interop.Excel.Workbooks.Open的COMException 位于Microsoft.Office.Interop.Word.Documents.Open的COMException

我们有一个在2003服务器上运行的Windows服务。它使用Word Interop打开一个源Word文档,然后使用它执行一些操作。Excel和PowerPoint文件也是如此

最近,我们尝试将此服务转移到Windows 2008服务器上,但遇到了实际问题

位于Microsoft.Office.Interop.Excel.Workbooks.Open的COMException 位于Microsoft.Office.Interop.Word.Documents.Open的COMException

当windows服务在2008服务器上运行时,我会遇到上述异常。查看任务管理器,应用程序确实可以加载,但不久后再次关闭

我读过有关Vista和Server 2008不再具有会话0的内容,并尝试相应地更改Office DCOM安全属性,包括将运行它们的用户的身份更改为“集成”,但没有效果

有人知道这是否可能吗?这是我们系统的一个基本方面,因此我们需要能够做到这一点


谢谢,这在启用UAC的Vista上也会发生。您可能希望尝试将DCOM标识设置为管理员帐户,然后再次测试


我最近也开始在一个试图通过互操作服务在Excel中打开工作簿的XP机器上遇到这个问题,但还没有找到解决方法。我自己也希望社区能够提供任何其他见解…

我在Windows Server 2008下从Windows服务自动化Office时遇到问题,尽管在Windows Server 2003下运行良好。这个问题也发生在打开调用时,因此可能是同一个问题

我试着按照小川在年给出的建议去做,结果似乎奏效了。这很奇怪,但小川先生发现了这一点,这是他应得的荣誉

“Ogawa Hack”摘要:为系统配置文件创建桌面文件夹,如下所示:

 C:\Windows\System32\config\systemprofile\Desktop
,如果在64位计算机上运行,请创建另一台,如下所示:

此外,文件夹需要对“驾驶”Office的任何用户具有写入权限


[编辑:已更正的链接URL]

[编辑2:澄清在64位Windows上,您需要两个文件夹,而不仅仅是WOW64文件夹]

好, 您需要运行“MMC-32”(命令提示符)启动32位MMC,然后添加组件服务(文件>添加/删除管理单元菜单)

然后按照以下说明之一操作:


如果您正在使用Apache,您可能还需要按照以下步骤让MS Word正常工作(以及其他答案中列出的所有内容):

下面是一个屏幕截图,显示了您需要打开的两个对话框:

对于Apache:

服务->Apache->右键单击(属性)->登录选项卡

MS Word:

启动dcomcnfg.exe->控制台根->组件服务->计算机->我的计算机->DCOM配置->查找Microsoft应用程序->右键单击(属性)->标识选项卡

**如果找不到MS Word,请确保启动了正确的DCOM配置(64位对32位),具体取决于安装的Office版本

这里有两个选项,您可以将Apache设置为使用本地系统帐户,并选中复选框以允许桌面交互。如果执行此操作,则需要将MS Word的标识设置为交互式用户


否则,您需要将两者设置为如图所示的同一用户(最好是登录的用户)。

您可能已经知道这一点,但Microsoft不支持在服务器上运行Word,这可能会违反许可证条款。请注意:如果您的应用程序编译为x86,请使用x86文件夹(即使您在x64机器上运行)C:\Windows\System32\config\systemprofile\desktop这只花了我4个小时的调试时间。非常感谢你帮了我的忙。它像一个Charm=POMFG一样工作……经过几个月的努力,终于在2008R2上运行了一个旧POS,这就是解决方案!今天仍然有效。我希望Windows更新不会破坏它。你对“mmc 32”的提示A.O.的回答拯救了我的一天。如果列表中存在“Office Licensing COM Server 15”,则还应使用该设置(交互式用户)完成此设置
 C:\Windows\SysWOW64\config\systemprofile\Desktop