DispatchMessageA 函数 (winuser.h)

将消息调度到窗口过程。 它通常用于调度 GetMessage 函数检索到的消息。

语法

LRESULT DispatchMessageA(
  [in] const MSG *lpMsg
);

参数

[in] lpMsg

类型: const MSG*

指向包含消息的结构的指针。

返回值

类型: LRESULT

返回值指定窗口过程返回的值。 尽管其含义取决于正在调度的消息,但通常忽略返回值。

注解

MSG 结构必须包含有效的消息值。 如果 lpmsg 参数指向WM_TIMER消息,并且WM_TIMER消息的 lParam 参数不是 NULL则 lParam 指向调用的函数,而不是窗口过程。

请注意,应用程序负责检索输入消息并将其调度到对话框中。 大多数应用程序为此使用main消息循环。 但是,若要允许用户移动到 并使用键盘选择控件,应用程序必须调用 IsDialogMessage。 有关详细信息,请参阅 对话框键盘接口

示例

有关示例,请参阅 创建消息循环

注意

winuser.h 标头将 DispatchMessage 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 winuser.h (包括 Windows.h)
Library User32.lib
DLL User32.dll
API 集 在 Windows 8) 中引入的 ext-ms-win-ntuser-message-l1-1-0 (

请参阅

概念性

GetMessage

IsDialogMessage

味精

消息和消息队列

PeekMessage

引用

TranslateMessage

WM_TIMER