参考:http://hi.baidu.com/yuanwenxue/blog/item/bf9c6f63727da3680c33fa93.html
该函数是将一个消息放入(寄送)到指定的线程的消息队列中,不等待线程处理消息就返回。
函数的完整原型是BOOL PostThreadMessage(DWORD idThread,UINT Msg,WPARAM wParam,LPARAM lParam);
参数说明:
IdThread:其消息江被寄送的线程的线程标识符。如果线程没有消息队列,该函数调用会失败,当线程第一次调用一个Win32 USER或者GDI函数时,系统创建线程的消息队列。
Msg:指定将被寄送的消息类型。
wParam:指定附加的消息特定信息。
lParam:指定附加的消息特定信息。
返回值:如果函数调用成功,返回值为非零,如果函数调用失败,返回值是零。
注意:消息将寄送到的线程必须创建消息队列,否则调用该函数惠失败,可以用以下的方法来处理:
创建一个事件对象,在创建线程:在调用PostThreadMessage之前,用函数WaitForSingleObject来等待事件被设置为告知状态,消息将寄送到的线程调用PeekMessage来强制西永创建消息队列,设置事件,表示线程已经准备好接受寄送的消息。消息将寄送到的线程通过调用GetMesssge或PeekMesssge来取得消息。