gpt4 book ai didi

windows - 从 Windows 服务启动应用程序

转载 作者:可可西里 更新时间:2023-11-01 14:41:29 26 4
gpt4 key购买 nike

我正在构建一个 Windows 服务,它将监视特定事件和磁盘事件的发生。当此类事件发生时,我的计划是通过客户端应用提醒用户注意该事件,并在必要时提供补救措施。我已经(大部分)完成了客户端和服务组件,它们工作得很好......除非客户端应用程序没有运行。

简而言之,我正在寻找一种通过 CreateProcess 从 Windows 服务启动客户端应用程序以向用户提供信息的方法。但是,该服务似乎甚至无法看到客户端应用程序的文件/文件夹来执行它。我怀疑这是由于运行服务的凭据所致,或者可能是由于服务级别限制所致,但我想在深入探讨之前先寻求一些建议。

那么,首先是显而易见的问题……我是否清楚地考虑了这个问题?架构方案合理吗,还是我应该看看另一种方法?我不想重新做我已经完成的任何工作,但显然想确保计划和过程是可靠的。

问题 2,这个模型有哪些局限性?是否有允许此级别访问的服务帐户?

我现在显然正在为此苦苦挣扎,所以任何想法或帮助将不胜感激!

谢谢,克里斯

最佳答案

正如其他人已经提到的,您不能(轻松地)直接从服务启动应用程序,所以我认为解决该问题的最简单方法是创建一个在登录时启动并使用已登录用户的凭据运行的进程在用户中,例如位于系统托盘中的应用程序,它为服务打开命名管道或网络端口。如果服务需要提醒用户,它会向该 channel 发送一条消息,然后客户端进程可以显示自己的 UI 或启动应用程序。使用管道或端口的进程间通信是处理 session 0 进程限制的最简单方法。

关于windows - 从 Windows 服务启动应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7601558/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com