我已阅读此post,并且在给定答案方面取得的成功很少。重要的是要从Windows服务启动GUI应用程序
使用WTSEnumerateSessions说,找到合适的桌面
但我得到的是在WTS_SESSION_INFO
结构中的站名。我看到的名字(例如“console”,“service”)与“Winsta0 \ default”这样的站名/桌面名称完全不同。答案继续到状态
然后CreateProcessAsUser启动该桌面上,我不认为它指的是应用程序(你通过它的桌面的句柄作为STARTUPINFO结构的一部分)
一个HANDLE
变量为桌面,因为STARTUPINFO
没有这个成员。我认为它指的是lpDesktop
成员,它允许您指定站/桌面名称。使用由WTSEnumerateSessions
返回的名称未能启动任何可见的UI,而“Winsta0 \ default”却没有。
我做错了什么?
让我知道如果我的答案帮助你。 – manuell