MDI应用程序未从Windows 7任务栏接收WM_ACTIVATE和DWM消息

时间:2011-07-23 08:07:21

标签: winapi windows-7 taskbar dwm c++builder-6

我有一个用Borland C ++ Builder 6编写的MDI应用程序(升级到新版本不是一个选项),我使用ITaskbarList3 interface将MDI子窗口集成到Windows 7任务栏中。根据Microsoft的文档,每个MDI窗口都会创建一个代理窗口,以便从任务栏接收消息。我在ITaskbarList3注册的标签页确实显示在任务栏上,代理窗口确实会收到WM_GETICONWM_ACTIVATEAPPWM_SYSCOMMANDWM_CLOSE条消息。但是,它们不会收到任何WM_ACTIVATEWM_DWMSENDICONICTHUMBNAILWM_DWMSENDICONICLIVEPREVIEWBITMAP条消息。没有这些,这个功能就没用了。

我认为这可能是一个明显的问题(该应用确实使用了SoftGems TThemeManager),因此我从C ++ Builder 2010应用程序中提取了一个清单,添加了一个“兼容性”部分,将Vista和Win7标记为支持的操作系统,以及用新清单替换已编译可执行文件中的库存清单。仍然没有运气。

我错过了什么吗?

0 个答案:

没有答案