0

我知道发送消息时,它具有 hwnd 值,以便系统知道哪个窗口负责处理该消息。当 hwnd 为 NULL 时,这意味着这是一个线程消息。那么被调用来处理该消息的过程函数是什么?

4

1 回答 1

3

请注意,仅在PostMessage(而不是SendMessage)下记录了使用HWNDas发送NULL将导致函数“表现得像 PostThreadMessage 一样,以 dwThreadId 作为当前线程”

请参阅此处了解线程如何实现消息队列。

在回答你原来的问题:

那么被调用来处理该消息的过程函数是什么?

PostThreadMessage发布到线程的消息队列。

PostThreadMessage 的注释:“如果指定的线程没有消息队列,该函数将失败。当线程第一次调用用户或 GDI 函数之一时,系统会创建一个线程的消息队列。”

于 2012-04-27T10:03:39.303 回答