![]() |
1
15
服务在自己的会话中运行,在Vista和Win7中是臭名昭著的会话0。该会话将服务与用户桌面隔离开来,它在另一个会话中运行。特别是为了防止通常使用特权帐户(如localsystem)运行的服务与用户交互。一个安全漏洞。 因此,服务无法看到其他会话拥有的窗口句柄。
不知道为什么要这样做,但您通常需要一个助手程序,它提供用户界面,并通过名为pipes、sockets、net remoting或wcf的IPC机制与服务通信。如果使用命名管道,请在管道名称前面加上
|
![]() |
2
1
您还可以启用“允许服务与桌面交互”选项,看看是否有效。否则我必须同意上面的onbugz评论。 |
![]() |
3
0
Windows服务没有用户界面,因此没有窗口。 |
![]() |
Mike Bruno · 访问模拟帐户的私钥 7 年前 |
![]() |
John · 通过P/Invoke使用回调和堆对象的安全方法 8 年前 |
![]() |
Residuum · 带有P/Invoke和指针的泛型 9 年前 |
![]() |
hl3mukkel · 约束与使用SafeHandle的抽象类 9 年前 |