关于windows:启动Domino服务和word

Start Domino service and word

我想从 Lotus Script 中的代理修改 word 文档。 Domino 服务器作为具有管理员用户计数的服务启动。 Word 文档附加在 Lotus Notes 文档中。我将文档提取到 Domino 可以访问的文件夹中。
当 Domino 服务器(作为服务)运行该进程时,Domino 会显示错误。但是当我将 Domino 服务器作为应用程序启动时,该进程运行良好并且没有出现任何错误。
脚本代码如下:

1
2
3
4
5
6
7
Set rtItem = doc_perfil.GetFirstItem(campo)
Set obj = rtitem.EmbeddedObjects(0)
sFile = RUTA +"" + ReplaceSubstring(nameNewFile,"/","-") +".docx"
Call obj.ExtractFile(sFile)
OLE_OBJECT ="word.application"    
Set Word = CreateObject (OLE_OBJECT)
Set templt = Word.Documents.Add (sFile)

产生错误的行是"Set templt = Word.Documents.Add (sFile)"


首先,Microsoft 完全不支持在服务器上运行 Word。

解决这个问题的快速而肮脏的方法是不将 Domino 作为服务运行。服务无法与 OLE 所需的 UI 交互。

这样做的缺点是,如果 Windows 服务器重新启动,则需要手动重新启动 Domino 服务器。

正确的方法是使用 docx4j 或 Apache POI 之类的库在 java 中执行您需要的操作。由于除了打开 word doc 之外您没有包含任何代码,因此我无法进一步评论什么是合适的库。