我有一个java应用程序,使用Runtime.getRuntime()。exec()打开notepad.exe。
我想将此应用程序作为Windows服务运行。所以我使用C#创建了一个Windows服务。
我可以使用'installutil'命令成功安装服务。
但是虽然我的java应用程序通过Windows服务正常启动,但它不会打开notepad.exe。
我认为问题在于服务作为SYSTEM进程运行,而不是当前登录用户。因此,我通过在installutil命令中提供用户凭据,在当前用户下安装了该服务。
然后在当前用户下正确启动服务和java应用程序,我可以看到同一用户下也创建了notepad.exe。但记事本不可见。
任何人都可以指导这里发生的事情。
由于
答案 0 :(得分:0)
听起来好像它是在另一个环境中启动的。
在服务选项中,尝试选中“本地系统帐户”单选按钮,然后选中“允许服务与桌面交互”复选框。