windows - Node.js windows 服务,无法从服务生成 GUI 应用程序

标签 windows node.js windows-services

我正在使用 NSSM 在 Windows 服务中运行 Node.js 应用程序,我每天检查一次远程 API 并生成一个可执行文件,该文件会在系统托盘中弹出一个通知气球。
当我从控制台 session 运行它时,它按预期工作,但是当从 Windows 服务运行时,我在运行进程列表中看到通知可执行文件,但气球没有显示。我想服务不应该有用户界面。 但必须有办法做到这一点..

当我运行 services.msc 时,选择我的服务 > 属性 > 登录 > 标记“允许服务与桌面交互”没有帮助。

代码是:spawn("notify.exe", {cwd: path.resolve(__dirname, "/tools")});

什么会导致这种行为?

最佳答案

您正一头扎进 "Session 0 Isolation" ,Windows Vista 及更高版本中的一项安全增强功能。无论 "Allow service to interact with desktop" setting, which is now misleading 是什么,由您的服务创建的系统托盘中的通知气球将永远不会显示在任何用户的桌面上。 .

关于windows - Node.js windows 服务,无法从服务生成 GUI 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24672843/

相关文章:

C++ 将数组写入注册表中的二进制条目

node.js - 如何配置 QnAMaker 工具来修改 Skype 中的列表样式按钮?

HTTPS 的 C++ 编程

c# - .Net Windows 服务抛出 EventType clr20r3 system.data.sqlclient.sql 错误

.net - Windows服务中未处理的异常过滤器

java - 是否有等同于 JAVA pack() 的 WIN32 API?

windows - 自移动批处理文件

python - 如何从 32 位 Python 访问 64 位 Windows 环境变量?

node.js - 如何使用 jsDom - node.js 操作 svg?

node.js - Mongoose 中的聚合管道运算符