Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. The procedure entry point CancelIoEx could not be located in the dynamic link library KERNEL32.dll
Forum Updated to NodeBB v4.3 + New Features

The procedure entry point CancelIoEx could not be located in the dynamic link library KERNEL32.dll

Scheduled Pinned Locked Moved Unsolved Installation and Deployment
3 Posts 3 Posters 9.6k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Offline
    P Offline
    PSI_lbc
    wrote on last edited by A Former User
    #1

    Using Qt 5.8.0 with MinGW_32 to compile app on a Win7 VM.

    I understand that 5.8.0 cannot be used with XP as the development OS.

    However, I was told..before I purchased the Qt Commercial version..that an app compiled with a 32 bit version of Qt 5.8.0 would run on Win7 and XP.

    This makes it appear that XP is not, and will not, be supported at all.
    QTBUG-58407: https://bugreports.qt.io/browse/QTBUG-58407

    The error message above is from an install on an XP box. The same install and app works fine when run on a Win7 computer.

    Is there a Qt compile or make flag that can be set to make this work on XP?

    I have found the following "hacks" to make the app work on XP.
    http://www.tripleboot.org/?p=423

    I tried this suggestion..
    win32 {
    QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWS,5.01
    }
    ..which caused
    :-1: error: error: /SUBSYSTEM:WINDOWS,5.01: No such file or directory

    I suspect that this is because I do not have Visual Studio on the Win7 VM.

    I also found this..

    http://stackoverflow.com/questions/28181940/64-bit-qt-application-crashes-on-xp-64-bit-but-not-on-win7-64-bit#28393832

    ADD_CUSTOM_COMMAND(
    TARGET my_target
    POST_BUILD
    COMMAND editbin my_target.exe /SUBSYSTEM:WINDOWS,5.01 /OSVERSION:5.1)

    ..but it requires editbin.exe which is also part of Visual Studio..and I have not found a source for just an editbin.exe download. Downloading and installing VS just to get a single exe seems pretty silly.

    jsulmJ 1 Reply Last reply
    0
    • hskoglundH Online
      hskoglundH Online
      hskoglund
      wrote on last edited by
      #2

      Hi, setting the /SUBSYSTEM:WINDOWS,5.01 is not possible for MinGW_32 but it is also not needed, it is already set for you automatically to /SUBSYSTEM:WINDOWS,4 which means you can run your MinGW_32 .exe also on WIndows NT 4 and Windows 2000.

      The problem is that starting with Qt 5.8.0 the classes QWindowsPipeReader and QWindowsPipeWriter in Q5Core.dll uses CancelIOEx and that API is not available on Windows XP.

      If you don't use those classes perhaps it's possible to patch them, easiest would be to binary edit the IAT in Qt 5.8.0's Qt5Core.dll, but maybe there are more errors like this waiting in another Qt dll...

      1 Reply Last reply
      0
      • P PSI_lbc

        Using Qt 5.8.0 with MinGW_32 to compile app on a Win7 VM.

        I understand that 5.8.0 cannot be used with XP as the development OS.

        However, I was told..before I purchased the Qt Commercial version..that an app compiled with a 32 bit version of Qt 5.8.0 would run on Win7 and XP.

        This makes it appear that XP is not, and will not, be supported at all.
        QTBUG-58407: https://bugreports.qt.io/browse/QTBUG-58407

        The error message above is from an install on an XP box. The same install and app works fine when run on a Win7 computer.

        Is there a Qt compile or make flag that can be set to make this work on XP?

        I have found the following "hacks" to make the app work on XP.
        http://www.tripleboot.org/?p=423

        I tried this suggestion..
        win32 {
        QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWS,5.01
        }
        ..which caused
        :-1: error: error: /SUBSYSTEM:WINDOWS,5.01: No such file or directory

        I suspect that this is because I do not have Visual Studio on the Win7 VM.

        I also found this..

        http://stackoverflow.com/questions/28181940/64-bit-qt-application-crashes-on-xp-64-bit-but-not-on-win7-64-bit#28393832

        ADD_CUSTOM_COMMAND(
        TARGET my_target
        POST_BUILD
        COMMAND editbin my_target.exe /SUBSYSTEM:WINDOWS,5.01 /OSVERSION:5.1)

        ..but it requires editbin.exe which is also part of Visual Studio..and I have not found a source for just an editbin.exe download. Downloading and installing VS just to get a single exe seems pretty silly.

        jsulmJ Offline
        jsulmJ Offline
        jsulm
        Lifetime Qt Champion
        wrote on last edited by
        #3

        @PSI_lbc If you have a commercial license then you can ask Qt Company for support or maybe reopen the bug.

        https://forum.qt.io/topic/113070/qt-code-of-conduct

        1 Reply Last reply
        0

        • Login

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • Users
        • Groups
        • Search
        • Get Qt Extensions
        • Unsolved