dwmapi.dll not found
-
wrote on 12 Mar 2017, 15:36 last edited by Jedd 3 Dec 2017, 15:36
For statically compiled (mingw32) Qt 5.8 applications, I'm getting a "dwmapi.dll not found" error when I try to run on Windows XP. This was not an issue using 5.6.. No issues on win7 and up.
Any ideas on debugging this?
-
wrote on 12 Mar 2017, 16:11 last edited by
Hi. There is no need to debug that. Looks like you've hit a 10-years old Windows / Internet Explorer problem. Just google it.
-
wrote on 12 Mar 2017, 16:46 last edited by
Thanks for the reply Wieland. My XP testing VM does not have IE7, but IE6. And code compiled with Qt 5.6 runs w/o issues in this VM. Could you please expand your answer?
-
wrote on 12 Mar 2017, 17:02 last edited by
I googled "dwmapi.dll missing" and it came up with lots of people complaining that IE7 doesn't work on their Windows XP boxes. Some claiming, IE7 would break dwmapi.dll. But it looks like Windows XP doesn't come with said dll by default: https://support.microsoft.com/en-us/help/980342/an-application-that-uses-the-ieframe.dll-module-does-not-work-after-you-install-internet-explorer-7. Maybe you can install dwmapi.dll from another source (e.g. copy it from a Vista machine). It might be worth noting that, since Qt 5.7, Windows XP is no longer supported: https://doc.qt.io/qt-5/supported-platforms-and-configurations.html.
-
DWM is the Desktop Window Manager - a new window manager introduced in Vista. Simply copying that dll to XP won't magically work. It's a whole sub-system.
As the table on the page @Wieland posted suggests - last Qt version that supports XP is the LTS release - Qt 5.6. That's the version you should be using if you're targeting XP. -
wrote on 12 Mar 2017, 17:46 last edited by
Thanks for the replies.
4/6