Python 服务中的桌面通知

Python 服务中的桌面通知,python,notifications,windows-services,desktop,Python,Notifications,Windows Services,Desktop,我编写了一个python程序,从服务器获取消息并调用windows通知 我使用pyinstaller将该程序转换为一个文件可执行文件,该程序作为应用程序运行时效果完美 当我在windows 10上使用nssm.exe将其转换为服务时,该服务仍然运行良好(侦听并响应服务器),但不会显示通知。 我试着 在服务属性>登录下允许服务与桌面交互 更改注册表HKEY_LOCAL_MACHINE>SYSTEM>CurrentControlSet>Control>Windows>NoInteractiveSe

我编写了一个python程序,从服务器获取消息并调用windows通知

我使用pyinstaller将该程序转换为一个文件可执行文件,该程序作为应用程序运行时效果完美

当我在windows 10上使用nssm.exe将其转换为服务时,该服务仍然运行良好(侦听并响应服务器),但不会显示通知。

我试着

  • 在服务属性>登录下允许服务与桌面交互
  • 更改注册表HKEY_LOCAL_MACHINE>SYSTEM>CurrentControlSet>Control>Windows>NoInteractiveService=0(错误)
还有什么我可以试着解决这个问题的吗


编辑-程序作为脚本(.py)和可执行文件(.exe)运行良好(通信和通知),问题是当可执行文件作为服务使用nssm运行时,通知不会显示。

尝试使用python模块win10toastwintoast

链接:-


希望它能解决你的问题

Windows服务在后台运行,在上运行。它们的GUI元素(托盘图标、窗口)将不会显示在交互式桌面上


在以前版本的Windows中,您可以切换到会话0以查看应用程序的窗口(尽管不是任务栏图标)。不过,.

谢谢你的回答。但这无关紧要。该程序运行良好,使用套接字连接并侦听远程服务器,通知通过win10toast click(带有回调函数)完成。当程序作为脚本(.py)运行时-一切正常(通信和通知)当程序作为应用程序(.exe)运行时-一切正常(通信和通知)当程序作为服务运行时(nssm)-通信正常(我可以在远程服务器中看到ack msg,但通知不会显示在屏幕上)这是因为它仅在Windows上工作(wintoast)…当它作为服务运行时,它不会导入Windows中可用的依赖项(10)因此,它抛出了一个错误。虽然,我怀疑它会有帮助,但值得一试——尝试搜索win10toast的nssm通知解决方案/插件……或者可能寻找其他东西……(抱歉,我帮不上忙)听说了,可能是问题。我试图将我的服务设置为用户服务而不是系统服务,仍然看不到通知,你知道解决方法吗?在用户帐户中运行你的服务不会有什么区别。对于你试图实现的目标,没有解决方法。会话0的隔离已引入到preve中新界「粉碎攻击」——一个严重的安全问题。