RegisterWindowMessageA 函数 (winuser.h)

定义保证在整个系统中唯一的新窗口消息。 发送或发布消息时可以使用消息值。

语法

UINT RegisterWindowMessageA(
  [in] LPCSTR lpString
);

参数

[in] lpString

类型:LPCTSTR

要注册的消息。

返回值

类型:UINT

如果消息已成功注册,则返回值是范围中的消息标识符,0xC000到0xFFFF。

如果函数失败,则返回值为零。 若要获取扩展的错误信息,请调用 GetLastError

言论

RegisterWindowMessage 函数通常用于注册消息,以便在两个合作应用程序之间进行通信。

如果两个不同的应用程序注册相同的消息字符串,则应用程序将返回相同的消息值。 消息将保持注册状态,直到会话结束。

仅当多个应用程序必须处理同一消息时,才使用 RegisterWindowMessage。 若要在窗口类中发送专用消息,应用程序可以使用范围 WM_USER 到0x7FFF的任何整数。 (此范围中的消息专用于窗口类,而不是应用程序。例如,预定义的控件类(如 BUTTONEDITLISTBOX)和 COMBOBOX 可能使用此范围中的值。

例子

有关示例,请参阅 查找文本

注意

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

要求

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

另请参阅

概念

消息和消息队列

PostMessage

参考

SendMessage