我有一个C++应用程序,它需要与运行在同一台机器上的C#应用程序(一个windows服务)通信。我希望C++应用程序能够写尽可能多的消息,而不需要知道或关心C#应用程序何时/是否在阅读这些消息,甚至不需要关心它是否在运行。即使C++应用程序已经关闭,C#应用程序也应该能够不时醒来并请求最新消息。
实现这一点最简单的方法是什么?我认为这种事情就是MSMQ的作用,但我还没有找到在C++中实现它的好方法。我现在正在使用NamedPipes,但这并没有真正实现,因为我的操作方式需要两个应用程序之间的连接,并且在读取之前需要对WriteLine块进行C++调用。
目前,我能想到的最好的解决方案是将消息写入一个文件,在每个消息上都有一个时间戳,C#应用程序会根据其上次更新时间戳定期检查。不过,这似乎有点粗鲁。
实现这种消息传递的最简单方法是什么?