jjzjj

SYSCOMMAND

全部标签

c++ - 监听 WM_SYSCOMMAND 事件

我正在编写一个小的c++程序,它应该对sc_screensaver和sc_monitorpower事件使用react。这应该在后台运行,因此没有gui。因为我还没有使用WindowsAPI的经验,所以我为此苦苦挣扎。A已经在谷歌上搜索了很多,发现了很多我不理解或不起作用的方法。你们中的任何人都可以给我提示吗?我阅读了有关捕获wm_syscommand的内容,但这似乎很困难,因为我没有窗口。 最佳答案 获取消息的唯一方法是通过消息循环和窗口过程。如果您的程序没有可见的图形用户界面,您必须创建一个message-onlywindow为此

windows - 请帮助 - 来自 Aero Shake/3D 翻转的 WM_SYSCOMMAND 消息

你好我有一个用Delphi2006编写的应用程序。我注意到在Windows7下运行时,该应用程序没有收到来自AeroShake的WM_SYSCOMMAND消息。但是,如果我以管理员身份运行该应用程序,那么它会在执行AeroShake时收到WM_SYSCOMMAND。我已经尝试为WM_SYSCOMMAND调用ChangeWindowMessageFilter并得到True的结果表明调用成功但我仍然无法从AeroShake获得WM_SYSCOMMAND消息。有谁知道为什么以及如何解决这个问题?谢谢 最佳答案 Thisdiscussion

windows - 为什么当用户单击任务栏按钮时模态 Delphi 窗体不接收 WM_SYSCOMMAND?

在Windows8.1上运行的Delphi(2007)程序中,我希望在用户单击属于我的程序的任务栏按钮时收到通知。所以我捕获了通常在这种情况下发送的WM_SYSCOMMAND。这适用于程序的主窗口。如果模态窗口处于事件状态(使用Form2.ShowModal打开),则相同的代码不能捕获WM_SYSCOMMAND,无论是在主窗体中还是在模态窗体中。有什么不同吗?有什么办法可以改变这种情况吗?这是我添加到两种形式的代码:unitunit1;interfacetypeTForm1=class(TForm)//[...]procedureWMSysCommand(varMsg:TWMSysCo