如何在Windows Vista Session 0和Desktop之间进行通信?

Kei*_*ino 6 ipc windows-vista

在Vista之前的Windows早期版本中,您可以让Windows服务与当前登录的桌面用户进行交互,以便从服务中轻松显示屏幕上的信息.在Windows Vista中,为了安全起见,添加了会话0以将服务与桌面隔离.在会话0之外运行的服务和应用程序之间进行通信的简单方法是什么?到目前为止,我通过使用TCP/IP在两者之间进行通信来解决这个问题,但这似乎是一种草率的方式.

Rob*_*ker 4

您也可以使用共享内存或命名管道来促进 IPC。从概念上讲,这类似于 TCP/IP,但您不必担心找到未使用的端口。

您必须确保您创建的命名对象带有“Global\”前缀,以允许所有会话访问它们,如此处所述

据我所知,服务无法再直接与桌面交互。