winapi - 未记录的 Windows 消息0x0313稳定



我发现了这条未记录的Windows消息,十六进制代码:当用户右键单击应用程序的任务栏按钮时发送0x0313。使用/捕获是否稳定?

不能保证,但实际上它可能不会消失。

我用谷歌搜索它只是为了确保它不是例如记录的 MFC 消息。

一个结果,来自 http://delphi.about.com/od/vclwriteenhance/a/ttaskbarmenu.htm:

右键单击任务栏按钮时,Windows 会向相应的应用程序窗口发送一条未记录的消息 ($0313)。WPARAM 未使用(零),LPARAM 以通常格式包含屏幕坐标中的鼠标位置。默认情况下,WindowProc 通过在给定坐标处弹出系统菜单来处理此消息。

显然,您可以使用它来弹出自己的自定义菜单,但在此之前,我会使用例如Spy++来检查它是否可能生成可以处理的文档消息。

它已经工作了很多年,所以虽然当然不能保证它会在未来的版本中工作,但它更有可能。

未记录的功能和消息可能会发生变化。不应依赖于此消息在另一个版本的 Windows 中以相同的方式发送,或者参数的格式相同。

如果您可以保证它可以在以下设备上工作,那么使用起来会很稳定:

1) 当前使用的所有 Windows 版本。

2) 将在应用的预期生存期内发布的所有 Windows 版本。

所以,没有。

最新更新