从 Windows 服务运行 GUI 应用程序
开发能够执行 GUI 应用程序的 Windows 服务可能是一项令人费解的任务。在处理需要图形界面的应用程序时,使用 CreateProcess 等传统方法是不够的。本文提供了此问题的解决方案,利用技术来定位活动桌面并在其上执行 GUI 应用程序。
根据 Roger Lipscombe 的说法,建议的方法包括使用 WTSEnumerateSessions 来识别活动桌面并使用 CreateProcessAsUser 来启动该桌面上的应用程序。但是,在实施此解决方案时务必谨慎。
共享终端服务器主机的多个用户可能会导致确定适当的活动桌面变得复杂。此外,用户桌面上随机出现的应用程序可能会造成破坏,并可能损害用户的工作效率。
为了缓解这些问题,更可靠的方法是在全局启动组中创建客户端应用程序的快捷方式。该客户端应用程序将伴随每个用户会话,并可用于根据需要启动其他应用程序。这种方法无需操作用户凭据、会话或桌面。此外,管理员可以通过修改或禁用来轻松管理此快捷方式,简化应用程序部署并遵守 Windows 应用程序标准。
以上是如何从 Windows 服务可靠地运行 GUI 应用程序?的详细内容。更多信息请关注PHP中文网其他相关文章!