CreatefileMaping,在网吧,不知道这个函数名写对没,在MSDN上说是创建或打开文件映射对象的,请问件映射对象是赶什么的,这个函数有什么用另一个函数是RegisterWIndowMessage,请问这个函数是赶什么的

解决方案 »

  1.   

    This function defines a new window message that is guaranteed to be unique throughout the system. The returned message value can be used when calling the SendMessage or PostMessage function. UINT RegisterWindowMessage( 
      LPCTSTR lpString 
    ); 
      

  2.   

    文件影象是使用内存的一种方式,例如在不同进程之间共享数据,就可以这么做
    具体看windows核心编程
      

  3.   

    挖,还是一头雾水, RegisterWindowMessage是定义一个系统唯一的窗口消息,那他跟
    #define UM_MYMESSAGE WM_USER+100 这种消息有什么不同呢
      

  4.   

    但是它是想WINDOWS注册的,既然是注册的就表示WINDOWS知道,那么其他的应用程序就能知道了
    DEFINE的就不同了,只能在你自己的程序中使用了你的DEFINE消息是不能用来在不同的进程之间发消息的,因为别人不知道你的这个东西为何物MSDN有详细说明
      

  5.   

    哦,windcsn的意思就是这个消息可以在不同进程之间使用,明白
      

  6.   

    1. 具体看看SDK中的File Mapping这一章,内存文件映射在进程间共享数据很方便,也就是共享内存。2. RegisterWindowMessage()和直接定义其实都可以跨进程使用,只要在需要的地方定义一下。区别是:直接定义一个消息,可能会有重复,你想啊,你编一个程序用#define UM_MYMESSAGE WM_USER+100,他编一个还是#define UM_MYMESSAGE WM_USER+100,两个程序一起运行岂不就乱了。RegisterWindowMessage()是由系统生成的唯一的消息,不会冲突,要引用只要用同样的名称在注册一个就行了,而这个名字由于可以复杂一些,重复性可以说很小(不要老是用“MyMessage”这样幼稚的名字就行了)。其实这两个函数有个共同点,就是都可以创建命名的内核对象,供不同的进程之间交换数据。