0

我有一个 java 应用程序,它使用 Runtime.getRuntime().exec() 打开 notepad.exe。

我想将此应用程序作为 Windows 服务运行。所以我使用 C# 创建了一个 Windows 服务。

我可以使用“installutil”命令成功安装该服务。

但是,尽管我的 java 应用程序由 windows 服务正常启动,但它并没有打开 notepad.exe。

我认为问题在于该服务作为 SYSTEM 进程运行,而不是作为当前登录用户运行。因此,我通过在 installutil 命令中提供用户凭据,在当前用户下安装了该服务。

然后服务和java应用程序在当前用户下正确启动,我可以看到notepad.exe也在同一个用户下创建。但记事本不可见。

任何人都可以指导这里发生的事情。

谢谢

4

1 回答 1

0

听起来它是在另一个背景下开始的。

在服务选项中尝试选中“本地系统帐户”单选按钮,然后选中“允许服务与桌面交互”复选框。

于 2012-05-09T12:42:18.387 回答