1
21
这真的是有可能的。您遇到的主要问题是,Windows应该被视为终端服务器,而用户会话应该被视为远程会话。您的服务应该能够启动在属于用户的远程会话中运行的进程。 顺便说一句,如果您编写了一个在Windows XP下运行的服务,而该服务没有添加到域中,并且激活了快速用户切换,那么在第二个(第三个等)登录的用户桌面上运行进程时,您可能会遇到同样的问题。
我希望你有一个用户令牌,你收到例如关于模仿或你有一个
此代码只是一个架构。
再说一句。在上面的代码中,我们使用与当前进程相同的帐户启动新进程(例如本地系统)。将代码更改为使用另一个帐户,例如users令牌
在
我建议你也读一读 How to ensure process window launched by Process.Start(ProcessStartInfo) has focus of all Forms? 在这里,我描述了如何强制在前台用户桌面上启动进程。 |
2
5
如果有帮助的话,我也面临着类似的问题,但是我想要一个纯powershell解决方案。 我从其他网站拼凑了一些信息,得出了这个结论:
|
3
3
|
4
3
是的,使用 CreateProcessAsUser |
5
0
Subverting Vista UAC in Both 32 and 64 bit Architectures 提供的代码是针对Vista的,但也适用于Win7和Win10 |
manoj sawant · 窗口服务无法访问远程共享文件夹 6 年前 |
Praveen M · 在WIX中强制终止windows服务 6 年前 |
Brendan · SolrCore正在加载Windows服务 6 年前 |
shahar eldad · 我应该使用哪个句柄初始化扫描仪应用程序 6 年前 |
Dev · CoCreateInstance方法有问题 7 年前 |