我需要为Windows开发一个类似于Unix中可用的消息队列IPC的消息队列,但我做了一些研究,但没有发现任何有用的东西。此外,我不应使用任何第三方或收费的许可产品。
如果两个应用程序都有消息泵,则可以使用 WM_COPYDATA
消息在它们之间发送消息。
如果没有,则可以使用 CreateNamedPipe
和 ConnectNamedPipe
,在消息模式下创建管道。
请注意,WM_COPYDATA
是同步的(这意味着发送应用程序将阻止,直到接收应用程序处理了消息(,如果这让您担心的话。
Windows上有一个内置的消息队列(MSMQ(。