如题,可以假设两个程序已经运行了。它们之间如何通信?请各位大侠赐教。

解决方案 »

  1.   

    很多方法,Windows平台上,如果两个进程在同一机器上,推荐使用内存映射文件,这是Windows平台最底层的进程通讯机制.
    如果两个进程不处于同一机器,Socket等方式都是可以的.
      

  2.   

    两个程序在同一台机器上。楼上的朋友能不能说得清楚一些,或者应该在MSDN里查哪方面的信息,我是菜鸟一个,还请大家多多涵,也谢谢谢前面回复的朋友。
      

  3.   

    网络用 SOCKET 同一台机器,可能共享内存,消息等方
    式,用SOCKET也可以
      

  4.   

    CreateFileMapping
    OpenFileMapping
    MapViewOfFile
    查这几个函数就够了吧
      

  5.   

    如果一个机器可以使用
    PostMessage( UINT message, WPARAM wParam = 0, LPARAM lParam = 0 )在两个程序见进行通信
      

  6.   

    如果是用postmessage的话,那么这个消息如何定义,是分别在两个程序中定义相同名字的消息吗?
      

  7.   

    进程间通讯,管道或网络编程,或者WM_COPYDATA消息,你可以研究研究
      

  8.   

    1、消息方式:SendMessage、PostMessage
    最简单,速度快,得到窗口句柄就行,但传输的数据库很小(<32BYTE)。
    2、共享内存方式
    CreateFileMapping
    OpenFileMapping
    MapViewOfFile
    用的时候注意互斥一下。速度快。
    3、SOCKET方式。
    最麻烦,但功能最强。可实现网络间的程序通讯。自己考虑用那个吧。
      

  9.   

    方法很多:1.PostMessage & SendMessage
    2.内存映射文件
    3.管道方式
    4.使用信箱
      

  10.   

    socket 可能在两机机器上用
      

  11.   

    如果用消息通信:
    用RegisterMessage()注册消息(两边一样),然后一边发送,一边接受(当然要定义消息响应函数)
      

  12.   

    RegisterWindowMessage,不好意思,上面写错了