Windows消息函数
目录
- BroadcastSystemMessage
- GetMessagePos
- GetMessageTime
- PostMessage
- PostThreadMessage
- RegisterWindowMessage
- ReplyMessage
- SendMessage
- SendMessageCallback
- SendMessageTimeout
- SendNotifyMessage
-
BroadcastSystemMessage将一条系统消息广播给系统中的所有顶级窗口。
long BroadcastSystemMessage( DWORD dwFlags, // 发送消息的方式 LPDWORD lpdwRecipients, // 消息接受器的信息,消息发送的目标 UINT uiMessage, // 系统消息编号 WPARAM wParam, // 消息参数 LPARAM lParam // 消息参数 ); //返回一个长整型,>0表示成功,-1表示出错。
-
GetMessagePos取得消息队列中上一条消息处理完毕时的鼠标指针屏幕位置。
DWORD GetMessagePos(void); //返回值给出光标位置的x,y坐标。x坐标在低位整数,y坐标在高位整数。
-
GetMessageTime取得消息队列中上一条消息处理完毕时的时间。
LONG GetMessageTime(void) //返回一个表示光标位置的长整数值
-
PostMessage用于将一条消息放入到消息队列中。
BOOL WINAPI PostMessage( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam );
-
PostThreadMessage其功能是将一个队列消息放入(寄送)到指定线程的消息队列里,不等待线程处理消息就返回。
BOOL PostThreadMessage( DWORD idThread, UINT Msg, WPARAM wParam, LPARAM IParam );
-
RegisterWindowMessage获取分配给一个字串标识符的消息编号。
UINT RegisterWindowMessage(String lpString);
-
ReplyMessage该函数用于应答由函数SendMessage发送的消息,不返回控制给调用SendMessage的函数。
BOOL ReplyMessage(LRESULT IResult);
-
SendMessage该函数用于应答由函数SendMessage发送的消息,不返回控制给调用SendMessage的函数。
LRESULT SendMessage( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM IParam );
-
SendMessageCallback将一条消息发给窗口。该函数最大的特定是可以立即返回。目标窗口函数执行完毕后,会用回调函数的形式将结果返回。
BOOL SendMessageCallback( HWND hwnd, UINT Msg, WPARAM wParam, LPARAM IParam, SEhDASYNCPROC IpResultCallBack, DWORD dwData );
-
SendMessageTimeout向窗口发送一条消息。如窗口位于不同的线程中,则利用这个函数可以指定一个超时值,以便在另一个进程挂起的时候防止调用进程也永远挂起。
LRESULT SendMessageTimeout( HWND hwnd, UINT Msg, WPARAM wParam, LPARAM IParam, UINT fuFlags, UINT uTimeout, LPDWORD lpdwResultult );
-
SendNotifyMessage向窗口发送一条消息。如目标窗口位于同调用方相同的线程内,则这个函数会表现为SendMessage函数。而且除非消息得到处理,否则函数不会返回。如目标窗口从属于一个不同的线程,则函数会立即返回。
BOOL SendNotifyMessage( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM IParam );