簡體   English   中英

64位Qt應用程序在XP 64位上崩潰(但在Win7 64位上沒有崩潰)

[英]64-bit Qt application crashes on XP 64-bit (but not on Win7 64-bit)

我正在使用Windows 7(64位)開發Qt(5.3)應用程序。 Visual Studio文件由CMake創建。 對於Windows 7的32位和64位二進制文​​件,此方法工作正常。32位的CMake Generator是Visual Studio 12 2013 ,對於64位的Visual Studio 12 2013 Win64

我也嘗試為Windows XP創建二進制文件。

我將此行添加到了32位版本的CMakeLists.txt中

SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:WINDOWS,5.01")

這行是64位版本

SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:WINDOWS,5.02")

我正在使用windeployqt部署QT依賴項。

運行CMake並啟動生成的Visual Studio之后,我選擇了Release-Mode並將平台工具集更改為Visual Studio 2013 - Windows XP (v120_xp)

在Windows XP 64位系統上,創建的32位二進制程序可以正常工作,在Windows XP 64位系統上,64位二進制程序崩潰時顯示“ hello-world.exe遇到問題,需要關閉...。”,

(編輯:但是在Windows 7 64位上工作正常)。

我究竟做錯了什么? :(

我有一個類似的問題,指定鏈接器的子系統無法解決該問題。 但是以下解決方案對我來說效果很好:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM