我发现这个未公开的窗口消息,hex代码:0x0313,当用户右键单击应用程序的任务栏button时发送。 这是稳定的使用/捕获?
没有保证,但实际上它可能不会消失。
我GOOGLE了它只是为了确保它不是例如一个记录的MFC消息。
其中一个结果来自http://delphi.about.com/od/vclwriteenhance/a/ttaskbarmenu.htm :
当您右键单击任务栏按钮时,Windows会将未公开的消息($ 0313)发送到相应的应用程序窗口。 WPARAM未使用(零),LPARAM以通常格式在屏幕坐标中包含鼠标位置。 默认情况下,WindowProc通过弹出给定坐标系统菜单来处理这个消息。
显然,你可以用它来弹出自己的自定义菜单,但在做之前,我会使用例如Spy ++来检查是否可能生成记录的消息,而不是处理。
它已经工作了很多年,所以虽然当然不能保证它能在未来的版本中工作,但它更有可能。
未记录的功能和消息可能会发生变化。 您不应该依赖于在另一个版本的窗口中以相同的方式发送此消息,或者参数的格式相同。
如果你能保证它可以工作,它将是稳定的使用:
1)当前正在使用的所有Windows版本。
2)将在您的应用程序的预期生命周期中发布的所有Windows版本。
所以不行。