当我以 LocalSystem 帐户运行服务时,我可以使用以下代码在当前登录帐户下启动 GUI 程序:
WTSGetActiveConsoleSessionId->WTSQueryUserToken->CreateProcessAsUser
但是,当我以个人帐户运行该服务时,GUI 程序不会出现。我可以在任务管理器中看到它。
当服务在我的个人帐户下运行时,我应该如何启动 GUI 程序?
最佳答案
John 和 jdigital 都是正确的——据我了解,服务通常可以具有桌面访问权限(您必须使用本地系统)或网络访问权限(您需要指定一个帐户来运行)。
您将需要两个将您的应用程序一分为二 - 一个用于与桌面交互,另一个用于通过网络交谈。然后,这两个部分可以相互交谈,将信息传递给最终用户。
关于windows-services - 如何在 Windows 服务中启动 GUI 程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/948417/