1

现在,我正在使用参数“-accept=socket,host=0,port=8100;urp;”启动 OpenOffice.org 3.3 使用 shell 脚本(Windows 上的 .bat 文件,Solaris 上的 .sh 文件)。OpenOffice.org 启动并出现主屏幕(您可以在其中选择文档类型、打开模板或打开文件)。不过,最终,这个屏幕将被禁用——我看到有关于这个目的的论据。

启动 OpenOffice.org 后,我可以启动我的应用程序并使用用于 Java 的 UNO API 库创建我的文档。此时,OpenOffice.org 主菜单屏幕和我的文档都打开了。但是,当我关闭文档时,OpenOffice.org 主菜单屏幕也会关闭,OpenOffice.org 进程也会终止。如果我使用我的应用程序生成另一个文档,则无法连接(因为 soffice 进程不再运行)。

我的目标是能够启动该过程(或者让它从系统启动开始,如果用户以这种方式配置它),让它静置直到明确终止,并继续接受新生成的文档。

我怎样才能得到想要的行为?现在,我的用例是 soffice 进程是从 shell 脚本启动的,但是另一个用例是 soffice 配置为在系统启动时运行。我的行为是否只能通过另一种方式运行 soffice 进程(如在系统启动时,而不是通过批处理脚本执行)?我看到的唯一其他选项(我现在正在考虑)是从我的 Java 应用程序“按需”启动 OpenOffice.org 进程,或者从 Java 应用程序启动它,然后在 Java 应用程序结束或启动时终止它每次我需要生成一个新文档的过程。

4

1 回答 1

4

您可以在启动 soffice.exe 时-invisible将参数添加到命令行。-headless

这将在 OOo 时隐藏主窗口 - 非常类似于“服务”。

据我记得,打开文档甚至不会显示 OOo 主窗口。

于 2011-09-20T15:05:17.763 回答