请问Registerwindowmessage,sendmessage怎么用呀.sendmessage的返回直为0是不是表示调用失败,非0是不是表示调用成功呀?用Registerwindowmessage注册的消息是不是需要手动发送呀,就是在什么情况下会产生这个消息呢.跟用户自定义的消息有什么不同呢.我看到有帮助讲Registerwindowmessage是用在两个程序之间的,在两个程序之间传送消息的.那请问这两个程序怎么传送消息呢,需要两个程序同时运行吗?我的分不多了没办法只能给这点了,请别介意.

解决方案 »

  1.   

    RegisterWindowMessage  是注册系统级别的消息, 可以用于进程之间
    SendMessage  不是说返回值是根据你特定的消息的产生返回值
    消息用SendMessage 或 PostMessage 发送
    既然是你定义的消息肯定要你发送也才能接受呀
      

  2.   

    用Registerwindowmessage不能使用标准消息处理过程,必须覆盖控件的wndProc()或defaulthandler()方法或者覆盖已知派生类窗口过程。你自己看一下《delphi5 developer's guide》第13章吧。
      

  3.   

    sendmessage的返回直为0是不是表示调用失败,非0是不是表示调用成功呀?
     -------------------------------------------
       不能这样说。程序A  sendmessage给一个程序B,如果B收到消息并作相信的处理,并返回值给A
                  如果B没有根本没有处理这个消息,sendmessage的默认值为1。到底成功以否,你  可以自己从返回值定义那请问这两个程序怎么传送消息呢,需要两个程序同时运行吗?
    -------------------------
    发送消息的程序和接受的程序肯定要运行了
      

  4.   

    sendmessage返回就是成功把消息放到消息队列。在没有放入队列是不会返回的。放到消息队列表示消息发送成功,不等于消息被处理。Registerwindowmessage是注册一个WIndow下所有程序可以用的消息.程序自定义消息只对该程序有效。比如A程序自定义一个消息为WM_USER+100.  B程序也定义一个一样的,两个消息不会冲突。如果Registerwindowmessage在A程序注册一个消息。B程序再用Registerwindowmessage注册相同的消息就注册失败.
      

  5.   

    过来看看。呵呵。借楼主宝地一用
    鉴别CSDN星星的含金量http://expert.csdn.net/Expert/topic/2147/2147062.xml?temp=.9299433