在桌面应用和Windows服务之间进行通信的最佳方式

时间:2013-10-06 04:26:46

标签: c++ windows service ipc

我正在研究app(c ++),它由两部分组成。

  • 控制面板在受限制的用户帐户下运行(启用了UAC)
  • Windows服务,执行一些有用的任务

我需要在控制面板中收集用户首选项并将其发送给服务。

从控制面板发送/接收数据到服务的最佳方法是什么?

套接字和命名管道很好,但它们可能会导致Windows防火墙显示安全警告。 共享内存也很好,但它需要在发送和接收线程之间进行大量同步。

我可以使用其他方法吗?

谢谢, Khachatur

1 个答案:

答案 0 :(得分:0)

共享内存每侧需要三个额外的互斥对象。没那么多。如果你不想写任何东西,我们的MsgConnect(开源)实现了MMF传输,并有一个在服务和UI应用程序之间进行通信的示例。