我正在寻找可以在同一操作系统上的语言之间使用的进程间通信工具(Windows7 for ex)。我需要在两个进程之间共享一些地址(数据)(一个用汇编语言编写,另一个用于C / C ++)。
任何帮助或资源? 感谢。
答案 0 :(得分:2)
它叫做共享内存。在Windows上,它通过CreateFileMapping()/ OpenFileMapping()和MapViewOfFile()API函数实现。
答案 1 :(得分:1)
听起来你正在寻找一个消息传递系统,而不仅仅是一种共享数据的方式。对于简单的应用程序,您可以定义 WM_USER + XXX 消息,或使用两个应用程序都同意的 RegisterWindowMessage 。您也可以使用 WM _COPYDATA来实现此目的。如果您的应用程序没有Windows消息队列(例如控制台应用程序),您可能希望使用 Winsock API,命名管道或某些同步对象,例如< strong>事件或信号量,实现消息传递(不推荐,因为它意味着线程)。