From 10:00 CET Friday 22nd November we will adjust how the server works to deal with some recently reported problems. Therefore there may be a load problem, if you experience more problems than usual trying to access the forum then please PM AndyS or any of the moderators so they can inform me.

Qt under windows: Switch to a new Platform SDK

  • Our application needs to implement features that aren't available in Qt. For that I need my windows application to use win32.

    I implement my own win32 only class, and include:

    @#include <windows.h>
    #include <windowsx.h>
    #include <WinUser.h>@

    my problem is that it takes the include files from the default VS2005 location defined in the build environment setup inside Qt-Creator (VCINSTALLDIR). It is an older Platform SDK that doesn't support what I need.

    I have a newer Platform SDK at:

    @C:\Program Files\Microsoft SDKs\Windows\v6.1\include@

    How do I make Qt-Creator take the windows include files from there without the ugliness of having full paths in my source code's #include ?

    BTW: VS2005 and the new SDK are fine when built under visual Studio. No Compatibility issues whatsoever, But i'd rather stick to QT-Creator.

    I have so far tried the following without success:

    In Qt-Creator -> Projects -> build environment, I tried to modify the following items to reflect the path of the newer platform SDK first, ahead of the other paths:


  • Have you try add in your .pro file something like this:
    INCLUDEPATH += C:\Program Files\Microsoft SDKs\Windows\v6.1\include

  • when building under Qt-Creator and windows, obviously other include paths exist, that are not defined in your *.pro file. If two identically named header files exist, one in an older SDK folder and one in a new SDK folder, and QT by default takes the old one. How do you force it to use the new one? what guarantees that what's specified in the *.pro file INCLUDEPATH statements will be taken into consideration first when looking for headers or library files?

Log in to reply