如何在 C++ 中定义可由消息泵处理的自己的 WM(如 WM_CLOSE 等)消息?
如果可能的话。
最佳答案
这取决于您使用消息的目的。 This link显示 Win32 消息的“地址空间”的 segmentation 。
WM_USER
在一般情况下不是正确的解决方案。 WM_USER
消息“可以由应用程序定义并用于在私有(private)窗口类中发送消息。这些值不能用于定义在整个应用程序中有意义的消息,因为一些预定义的窗口类已经在此范围内定义了值。”
您最好分配一个 WM_APP
范围内的消息 ID。
RegisterWindowMessage
如果您想让系统在运行时为您分配一个消息 ID,则很有用。 “注册相同字符串的所有应用程序都可以使用关联的消息编号来交换消息”,因此当您需要使用自定义消息进行简单的进程间通信时,可以使用 RegisterWindowMessage
。
关于c++ - 在 C++ 中为 Message Pump 定义自己的 WM 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2874797/