在我的开发机器上,一切正常。但是,当我尝试在服务器上从代码启动它时,OpenOffice无法在端口2002上连接。如果我使用完全相同的命令从cmd启动它,则它的工作原理是...。

我做错了什么?

Cmd命令

c:/openoffice/program/soffice.exe -headless -nologo -nofirststartwizard -norestore -accept=socket,host=localhost,port=2002;urp;StarOffice.Service


从代码

            var info = new ProcessStartInfo("c:/openoffice/program/soffice.exe")
                {
                    UseShellExecute = false,
                    RedirectStandardInput = true,
                    RedirectStandardOutput = true,
                    RedirectStandardError = true,
                    Arguments = "-headless -nologo -nofirststartwizard -norestore -accept=socket,host=localhost,port=2002;urp;StarOffice.Service"
                };




            var result = Process.Start(info);

最佳答案

在IIS管理器(此处为IIS 7.5)中,进入您的应用程序所使用的应用程序池的“高级设置”。将“加载用户配置文件”设置为True。

这似乎是必需的,您已经拥有的-nofirststartwizard也是如此。

这两件事结合在一起为我工作。

关于c# - 从代码后面启动OpenOffice即服务不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14971797/

10-12 14:22