0

我编写了一个简单的服务,它现在在我的 Windows 服务上处于活动状态。我的问题是我无法通过 Windows 服务访问 cmd。我将 nodejs express 用于我的服务,node-cmd用于 cmd 访问和node-windows创建服务。我的应用程序这样做:

app.get('/check', (req, res) => {
    cmd.run('start chrome');
    res.status(200).send('The server is working correctly :)');
});

对于那些不明白这一点的人,它基本上意味着:

Listen for the GET '.../check' call, then do:
    cmd: start chrome
    return response 'The server is working correctly :)'

当我手动运行它时,它会启动 chrome。当我将它用作 Windows 服务时,它不会启动 chrome,但它会响应The server is working correctly :)

出于某种原因,cmd 命令在 Windows 服务中不起作用?

4

1 回答 1

1

从 Windows Vista 服务进程在用户进程运行的不同会话/桌面中运行(有 Microsoft白皮书)。

因此,如果您chrome.exe从服务启动,它将在服务会话中运行,并且不会在用户桌面上显示。您可以检查任务列表以确保它已启动。

于 2019-01-29T09:04:26.047 回答