Qt 4.8.4 Release 版本不适用于 Windows 7 64 位
Posted
技术标签:
【中文标题】Qt 4.8.4 Release 版本不适用于 Windows 7 64 位【英文标题】:Qt 4.8.4 Release version not working on Windows 7 64 bit 【发布时间】:2013-10-14 20:39:37 【问题描述】:我正在尝试制作项目的可发布版本。我在几台不同的机器上使用包含在同一目录中的 dll 测试了 exe。它在我的电脑(windows 8 64 位)、32 位 windows xp 虚拟机、32 位 windows 7 虚拟机和另一台 windows 7 64 位笔记本电脑上运行。然而,其他人正试图在另一台 Windows 7 64 位机器上运行它。他收到一个 Microsoft Visual C++ 运行时库错误,上面写着:
此应用程序已请求运行时以异常方式终止。请联系应用程序的支持团队了解更多信息。
我包含在应用程序目录中的 dll:
libgcc_s_dw2-1.dll
libstdc++-6.dll
mingwm10.dll
QtCore4.dll
QtCored4.dll
QtGui4.dll
QtNetwork4.dll
QtSerialPortd.dll
这是 exe 文件上的 ldd 在我正在运行的 Windows 8 计算机上的样子:
ntdll.dll => /cygdrive/c/windows/SYSTEM32/ntdll.dll (0x7fc44b50000)
ntdll.dll => /cygdrive/c/windows/SYSTEM32/ntdll.dll (0x77730000)
wow64.dll => /cygdrive/c/windows/SYSTEM32/wow64.dll (0x776e0000)
wow64win.dll => /cygdrive/c/windows/system32/wow64win.dll (0x77670000)
wow64cpu.dll => /cygdrive/c/windows/system32/wow64cpu.dll (0x776d0000)
??? => ??? (0x540000)
KERNEL32.DLL => /cygdrive/c/windows/SYSTEM32/KERNEL32.DLL (0x75680000)
??? => ??? (0x540000)
??? => ??? (0x540000)
KERNEL32.DLL => /cygdrive/c/windows/SYSTEM32/KERNEL32.DLL (0x75680000)
KERNELBASE.dll => /cygdrive/c/windows/SYSTEM32/KERNELBASE.dll (0x76da0000)
msvcrt.dll => /cygdrive/c/windows/SYSTEM32/msvcrt.dll (0x76ba0000)
WSOCK32.DLL => /cygdrive/c/windows/SYSTEM32/WSOCK32.DLL (0x747e0000)
libgcc_s_dw2-1.dll => /cygdrive/c/Mingw32/bin/libgcc_s_dw2-1.dll (0x6e940000)
libstdc++-6.dll => /cygdrive/c/Mingw32/bin/libstdc++-6.dll (0x6fc40000)
QtCore4.dll => /cygdrive/c/Qt/4.8.4/bin/QtCore4.dll (0x6e0c0000)
QtGui4.dll => /cygdrive/c/Qt/4.8.4/bin/QtGui4.dll (0x67700000)
QtNetwork4.dll => /cygdrive/c/Qt/4.8.4/bin/QtNetwork4.dll (0x65c80000)
QtSerialPortd.dll => /cygdrive/c/Qt/4.8.4/bin/QtSerialPortd.dll (0x63680000)
WS2_32.dll => /cygdrive/c/windows/SYSTEM32/WS2_32.dll (0x76e50000)
ADVAPI32.DLL => /cygdrive/c/windows/SYSTEM32/ADVAPI32.DLL (0x74e60000)
mingwm10.dll => /cygdrive/c/Mingw32/bin/mingwm10.dll (0x6fbc0000)
OLE32.dll => /cygdrive/c/windows/SYSTEM32/OLE32.dll (0x74f20000)
USER32.dll => /cygdrive/c/windows/SYSTEM32/USER32.dll (0x76c80000)
COMDLG32.DLL => /cygdrive/c/windows/SYSTEM32/COMDLG32.DLL (0x75800000)
GDI32.dll => /cygdrive/c/windows/SYSTEM32/GDI32.dll (0x75250000)
IMM32.DLL => /cygdrive/c/windows/SYSTEM32/IMM32.DLL (0x76eb0000)
OLEAUT32.DLL => /cygdrive/c/windows/SYSTEM32/OLEAUT32.DLL (0x76ed0000)
SHELL32.DLL => /cygdrive/c/windows/SYSTEM32/SHELL32.DLL (0x75ad0000)
WINMM.DLL => /cygdrive/c/windows/SYSTEM32/WINMM.DLL (0x747b0000)
WINSPOOL.DRV => /cygdrive/c/windows/SYSTEM32/WINSPOOL.DRV (0x73800000)
setupapi.dll => /cygdrive/c/windows/SYSTEM32/setupapi.dll (0x750a0000)
QtCored4.dll => /cygdrive/c/Qt/4.8.4/bin/QtCored4.dll (0x69cc0000)
RPCRT4.dll => /cygdrive/c/windows/SYSTEM32/RPCRT4.dll (0x775c0000)
NSI.dll => /cygdrive/c/windows/SYSTEM32/NSI.dll (0x76ea0000)
sechost.dll => /cygdrive/c/windows/SYSTEM32/sechost.dll (0x77510000)
combase.dll => /cygdrive/c/windows/SYSTEM32/combase.dll (0x753d0000)
SHLWAPI.dll => /cygdrive/c/windows/SYSTEM32/SHLWAPI.dll (0x75a90000)
COMCTL32.dll => /cygdrive/c/windows/WinSxS/x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.9200.16658_none_bf1359a245f1cd12/COMCTL32.dll (0x73cd0000)
MSCTF.dll => /cygdrive/c/windows/SYSTEM32/MSCTF.dll (0x74d80000)
WINMMBASE.dll => /cygdrive/c/windows/SYSTEM32/WINMMBASE.dll (0x74780000)
CFGMGR32.dll => /cygdrive/c/windows/SYSTEM32/CFGMGR32.dll (0x77020000)
DEVOBJ.dll => /cygdrive/c/windows/SYSTEM32/DEVOBJ.dll (0x77070000)
SspiCli.dll => /cygdrive/c/windows/SYSTEM32/SspiCli.dll (0x74d60000)
CRYPTBASE.dll => /cygdrive/c/windows/SYSTEM32/CRYPTBASE.dll (0x74d50000)
SHCORE.DLL => /cygdrive/c/windows/SYSTEM32/SHCORE.DLL (0x74700000)
bcryptPrimitives.dll => /cygdrive/c/windows/SYSTEM32/bcryptPrimitives.dll (0x74cf0000)
编辑:
我在 XP 机器上重新构建了发布版本。 libstdc++-6.dll 似乎不再出现在 ldd 中。
ldd 在它所构建的 32 位 Windows XP 机器上(工作):
ntdll.dll => /cygdrive/c/WINDOWS/system32/ntdll.dll (0x7c900000)
kernel32.dll => /cygdrive/c/WINDOWS/system32/kernel32.dll (0x7c800000)
QtCore4.dll => /cygdrive/c/QtSDK/Desktop/Qt/4.7.4/mingw/bin/QtCore4.dll (0x6a1c0000)
ADVAPI32.DLL => /cygdrive/c/WINDOWS/system32/ADVAPI32.DLL (0x77dd0000)
RPCRT4.dll => /cygdrive/c/WINDOWS/system32/RPCRT4.dll (0x77e70000)
Secur32.dll => /cygdrive/c/WINDOWS/system32/Secur32.dll (0x77fe0000)
mingwm10.dll => /cygdrive/c/QtSDK/mingw/bin/mingwm10.dll (0x6fbc0000)
msvcrt.dll => /cygdrive/c/WINDOWS/system32/msvcrt.dll (0x77c10000)
OLE32.dll => /cygdrive/c/WINDOWS/system32/OLE32.dll (0x774e0000)
GDI32.dll => /cygdrive/c/WINDOWS/system32/GDI32.dll (0x77f10000)
USER32.dll => /cygdrive/c/WINDOWS/system32/USER32.dll (0x7e410000)
WS2_32.DLL => /cygdrive/c/WINDOWS/system32/WS2_32.DLL (0x71ab0000)
WS2HELP.dll => /cygdrive/c/WINDOWS/system32/WS2HELP.dll (0x71aa0000)
libgcc_s_dw2-1.dll => /cygdrive/c/QtSDK/mingw/bin/libgcc_s_dw2-1.dll (0x6e940000)
QtGui4.dll => /cygdrive/c/QtSDK/Desktop/Qt/4.7.4/mingw/bin/QtGui4.dll (0x65100000)
COMDLG32.DLL => /cygdrive/c/WINDOWS/system32/COMDLG32.DLL (0x763b0000)
COMCTL32.dll => /cygdrive/c/WINDOWS/system32/COMCTL32.dll (0x5d090000)
SHELL32.dll => /cygdrive/c/WINDOWS/system32/SHELL32.dll (0x7c9c0000)
SHLWAPI.dll => /cygdrive/c/WINDOWS/system32/SHLWAPI.dll (0x77f60000)
IMM32.DLL => /cygdrive/c/WINDOWS/system32/IMM32.DLL (0x76390000)
OLEAUT32.DLL => /cygdrive/c/WINDOWS/system32/OLEAUT32.DLL (0x77120000)
WINMM.DLL => /cygdrive/c/WINDOWS/system32/WINMM.DLL (0x76b40000)
WINSPOOL.DRV => /cygdrive/c/WINDOWS/system32/WINSPOOL.DRV (0x73000000)
QtNetwork4.dll => /cygdrive/c/QtSDK/Desktop/Qt/4.7.4/mingw/bin/QtNetwork4.dll (0x6ff00000)
QtSerialPortd.dll => /cygdrive/c/QtSDK/Desktop/Qt/4.7.4/mingw/bin/QtSerialPortd.dll (0x6ef80000)
QtCored4.dll => /cygdrive/c/QtSDK/Desktop/Qt/4.7.4/mingw/bin/QtCored4.dll (0x680000)
setupapi.dll => /cygdrive/c/WINDOWS/system32/setupapi.dll (0x77920000)
WSOCK32.DLL => /cygdrive/c/WINDOWS/system32/WSOCK32.DLL (0x71ad0000)
ldd 在 Windows 8 计算机上(工作):
ntdll.dll => /cygdrive/c/windows/SYSTEM32/ntdll.dll (0x7fc44b50000)
ntdll.dll => /cygdrive/c/windows/SYSTEM32/ntdll.dll (0x77730000)
wow64.dll => /cygdrive/c/windows/SYSTEM32/wow64.dll (0x776e0000)
wow64win.dll => /cygdrive/c/windows/system32/wow64win.dll (0x77670000)
wow64cpu.dll => /cygdrive/c/windows/system32/wow64cpu.dll (0x776d0000)
??? => ??? (0x2b0000)
KERNEL32.DLL => /cygdrive/c/windows/SYSTEM32/KERNEL32.DLL (0x75680000)
??? => ??? (0x2b0000)
??? => ??? (0x2b0000)
KERNEL32.DLL => /cygdrive/c/windows/SYSTEM32/KERNEL32.DLL (0x75680000)
KERNELBASE.dll => /cygdrive/c/windows/SYSTEM32/KERNELBASE.dll (0x76da0000)
apphelp.dll => /cygdrive/c/windows/system32/apphelp.dll (0x73de0000)
msvcrt.dll => /cygdrive/c/windows/SYSTEM32/msvcrt.dll (0x76ba0000)
WSOCK32.DLL => /cygdrive/c/windows/SYSTEM32/WSOCK32.DLL (0x747e0000)
libgcc_s_dw2-1.dll => /cygdrive/c/users/jared/documents/telkonet/ESU Release/test/esutest/libgcc_s_dw2-1.dll (0x6e940000)
libstdc++-6.dll => /cygdrive/c/users/jared/documents/telkonet/ESU Release/test/esutest/libstdc++-6.dll (0x6fc40000)
QtCore4.dll => /cygdrive/c/users/jared/documents/telkonet/ESU Release/test/esutest/QtCore4.dll (0x6e0c0000)
QtGui4.dll => /cygdrive/c/users/jared/documents/telkonet/ESU Release/test/esutest/QtGui4.dll (0x67700000)
QtNetwork4.dll => /cygdrive/c/users/jared/documents/telkonet/ESU Release/test/esutest/QtNetwork4.dll (0x65c80000)
QtSerialPortd.dll => /cygdrive/c/users/jared/documents/telkonet/ESU Release/test/esutest/QtSerialPortd.dll (0x63680000)
WS2_32.dll => /cygdrive/c/windows/SYSTEM32/WS2_32.dll (0x76e50000)
ADVAPI32.DLL => /cygdrive/c/windows/SYSTEM32/ADVAPI32.DLL (0x74e60000)
mingwm10.dll => /cygdrive/c/users/jared/documents/telkonet/ESU Release/test/esutest/mingwm10.dll (0x6fbc0000)
OLE32.dll => /cygdrive/c/windows/SYSTEM32/OLE32.dll (0x74f20000)
USER32.dll => /cygdrive/c/windows/SYSTEM32/USER32.dll (0x76c80000)
COMDLG32.DLL => /cygdrive/c/windows/SYSTEM32/COMDLG32.DLL (0x75800000)
GDI32.dll => /cygdrive/c/windows/SYSTEM32/GDI32.dll (0x75250000)
IMM32.DLL => /cygdrive/c/windows/SYSTEM32/IMM32.DLL (0x76eb0000)
OLEAUT32.DLL => /cygdrive/c/windows/SYSTEM32/OLEAUT32.DLL (0x76ed0000)
SHELL32.DLL => /cygdrive/c/windows/SYSTEM32/SHELL32.DLL (0x75ad0000)
WINMM.DLL => /cygdrive/c/windows/SYSTEM32/WINMM.DLL (0x747b0000)
WINSPOOL.DRV => /cygdrive/c/windows/SYSTEM32/WINSPOOL.DRV (0x73800000)
setupapi.dll => /cygdrive/c/windows/SYSTEM32/setupapi.dll (0x750a0000)
QtCored4.dll => /cygdrive/c/Qt/4.8.4/bin/QtCored4.dll (0x69cc0000)
RPCRT4.dll => /cygdrive/c/windows/SYSTEM32/RPCRT4.dll (0x775c0000)
NSI.dll => /cygdrive/c/windows/SYSTEM32/NSI.dll (0x76ea0000)
sechost.dll => /cygdrive/c/windows/SYSTEM32/sechost.dll (0x77510000)
combase.dll => /cygdrive/c/windows/SYSTEM32/combase.dll (0x753d0000)
SHLWAPI.dll => /cygdrive/c/windows/SYSTEM32/SHLWAPI.dll (0x75a90000)
COMCTL32.dll => /cygdrive/c/windows/WinSxS/x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.9200.16658_none_bf1359a245f1cd12/COMCTL32.dll (0x73cd0000)
MSCTF.dll => /cygdrive/c/windows/SYSTEM32/MSCTF.dll (0x74d80000)
WINMMBASE.dll => /cygdrive/c/windows/SYSTEM32/WINMMBASE.dll (0x74780000)
CFGMGR32.dll => /cygdrive/c/windows/SYSTEM32/CFGMGR32.dll (0x77020000)
DEVOBJ.dll => /cygdrive/c/windows/SYSTEM32/DEVOBJ.dll (0x77070000)
SspiCli.dll => /cygdrive/c/windows/SYSTEM32/SspiCli.dll (0x74d60000)
CRYPTBASE.dll => /cygdrive/c/windows/SYSTEM32/CRYPTBASE.dll (0x74d50000)
SHCORE.DLL => /cygdrive/c/windows/SYSTEM32/SHCORE.DLL (0x74700000)
bcryptPrimitives.dll => /cygdrive/c/windows/SYSTEM32/bcryptPrimitives.dll (0x74cf0000)
ldd 在 Windows 7 64 位(工作)上:
ntdll.dll => /cygdrive/c/Windows/SYSTEM32/ntdll.dll (0x76f30000)
ntdll.dll => /cygdrive/c/Windows/SysWOW64/ntdll.dll (0x77110000)
wow64.dll => /cygdrive/c/Windows/SYSTEM32/wow64.dll (0x72c50000)
wow64win.dll => /cygdrive/c/Windows/SYSTEM32/wow64win.dll (0x72bf0000)
wow64cpu.dll => /cygdrive/c/Windows/SYSTEM32/wow64cpu.dll (0x72be0000)
??? => ??? (0x76d10000)
kernel32.dll => /cygdrive/c/Windows/syswow64/kernel32.dll (0x75670000)
??? => ??? (0x76d10000)
??? => ??? (0x76e30000)
kernel32.dll => /cygdrive/c/Windows/syswow64/kernel32.dll (0x75670000)
KERNELBASE.dll => /cygdrive/c/Windows/syswow64/KERNELBASE.dll (0x76a30000)
QtCore4.dll => /cygdrive/c/users/admin/downloads/esutestexe/QtCore4.dll (0x6a1c0000)
ADVAPI32.DLL => /cygdrive/c/Windows/syswow64/ADVAPI32.DLL (0x74c90000)
msvcrt.dll => /cygdrive/c/Windows/syswow64/msvcrt.dll (0x75570000)
sechost.dll => /cygdrive/c/Windows/SysWOW64/sechost.dll (0x74f70000)
RPCRT4.dll => /cygdrive/c/Windows/syswow64/RPCRT4.dll (0x75480000)
SspiCli.dll => /cygdrive/c/Windows/syswow64/SspiCli.dll (0x74b60000)
CRYPTBASE.dll => /cygdrive/c/Windows/syswow64/CRYPTBASE.dll (0x74b50000)
mingwm10.dll => /cygdrive/c/users/admin/downloads/esutestexe/mingwm10.dll (0x6fbc0000)
OLE32.dll => /cygdrive/c/Windows/syswow64/OLE32.dll (0x768c0000)
GDI32.dll => /cygdrive/c/Windows/syswow64/GDI32.dll (0x76c80000)
USER32.dll => /cygdrive/c/Windows/syswow64/USER32.dll (0x76740000)
LPK.dll => /cygdrive/c/Windows/syswow64/LPK.dll (0x74fe0000)
USP10.dll => /cygdrive/c/Windows/syswow64/USP10.dll (0x74bc0000)
WS2_32.DLL => /cygdrive/c/Windows/syswow64/WS2_32.DLL (0x74f90000)
NSI.dll => /cygdrive/c/Windows/syswow64/NSI.dll (0x76a20000)
libgcc_s_dw2-1.dll => /cygdrive/c/users/admin/downloads/esutestexe/libgcc_s_dw2-1.dll (0x6e940000)
QtGui4.dll => /cygdrive/c/users/admin/downloads/esutestexe/QtGui4.dll (0x65100000)
COMDLG32.DLL => /cygdrive/c/Windows/syswow64/COMDLG32.DLL (0x764c0000)
SHLWAPI.dll => /cygdrive/c/Windows/syswow64/SHLWAPI.dll (0x76b20000)
COMCTL32.dll => /cygdrive/c/Windows/WinSxS/x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.7601.18201_none_ec80f00e8593ece5/COMCTL32.dll (0x72010000)
SHELL32.dll => /cygdrive/c/Windows/syswow64/SHELL32.dll (0x75790000)
IMM32.DLL => /cygdrive/c/Windows/syswow64/IMM32.DLL (0x76840000)
MSCTF.dll => /cygdrive/c/Windows/syswow64/MSCTF.dll (0x763e0000)
OLEAUT32.DLL => /cygdrive/c/Windows/syswow64/OLEAUT32.DLL (0x76a90000)
WINMM.DLL => /cygdrive/c/Windows/system32/WINMM.DLL (0x725b0000)
WINSPOOL.DRV => /cygdrive/c/Windows/system32/WINSPOOL.DRV (0x720a0000)
QtNetwork4.dll => /cygdrive/c/users/admin/downloads/esutestexe/QtNetwork4.dll (0x6ff00000)
QtSerialPortd.dll => /cygdrive/c/users/admin/downloads/esutestexe/QtSerialPortd.dll (0x6ef80000)
QtCored4.dll => /cygdrive/c/users/admin/downloads/esutestexe/QtCored4.dll (0x7f0000)
setupapi.dll => /cygdrive/c/Windows/syswow64/setupapi.dll (0x74ff0000)
CFGMGR32.dll => /cygdrive/c/Windows/syswow64/CFGMGR32.dll (0x74d40000)
DEVOBJ.dll => /cygdrive/c/Windows/syswow64/DEVOBJ.dll (0x768a0000)
WSOCK32.DLL => /cygdrive/c/Windows/system32/WSOCK32.DLL (0x661d0000)
ldd 在 Windows 7 64 位机器上(不工作):
ntdll.dll => /cygdrive/c/Windows/SYSTEM32/ntdll.dll (0x76cf0000)
ntdll.dll => /cygdrive/c/Windows/SysWOW64/ntdll.dll (0x76ed0000)
wow64.dll => /cygdrive/c/Windows/SYSTEM32/wow64.dll (0x748b0000)
wow64win.dll => /cygdrive/c/Windows/SYSTEM32/wow64win.dll (0x74850000)
wow64cpu.dll => /cygdrive/c/Windows/SYSTEM32/wow64cpu.dll (0x74840000)
??? => ??? (0x76ad0000)
kernel32.dll => /cygdrive/c/Windows/syswow64/kernel32.dll (0x76560000)
??? => ??? (0x76ad0000)
??? => ??? (0x76bf0000)
kernel32.dll => /cygdrive/c/Windows/syswow64/kernel32.dll (0x76560000)
KERNELBASE.dll => /cygdrive/c/Windows/syswow64/KERNELBASE.dll (0x7522000 0)
QtCore4.dll => /cygdrive/c/Users/bschwanke/Desktop/ESUtestEXE/QtCore4.dl l (0x6a1c0000)
ADVAPI32.DLL => /cygdrive/c/Windows/syswow64/ADVAPI32.DLL (0x74a70000)
msvcrt.dll => /cygdrive/c/Windows/syswow64/msvcrt.dll (0x74e10000)
sechost.dll => /cygdrive/c/Windows/SysWOW64/sechost.dll (0x76ab0000)
RPCRT4.dll => /cygdrive/c/Windows/syswow64/RPCRT4.dll (0x75130000)
SspiCli.dll => /cygdrive/c/Windows/syswow64/SspiCli.dll (0x74920000)
CRYPTBASE.dll => /cygdrive/c/Windows/syswow64/CRYPTBASE.dll (0x74910000)
mingwm10.dll => /cygdrive/c/Users/bschwanke/Desktop/ESUtestEXE/mingwm10. dll (0x6fbc0000)
OLE32.dll => /cygdrive/c/Windows/syswow64/OLE32.dll (0x76390000)
GDI32.dll => /cygdrive/c/Windows/syswow64/GDI32.dll (0x749e0000)
USER32.dll => /cygdrive/c/Windows/syswow64/USER32.dll (0x761a0000)
LPK.dll => /cygdrive/c/Windows/syswow64/LPK.dll (0x76ea0000)
USP10.dll => /cygdrive/c/Windows/syswow64/USP10.dll (0x75270000)
WS2_32.DLL => /cygdrive/c/Windows/syswow64/WS2_32.DLL (0x74b10000)
NSI.dll => /cygdrive/c/Windows/syswow64/NSI.dll (0x74ec0000)
libgcc_s_dw2-1.dll => /cygdrive/c/Users/bschwanke/Desktop/ESUtestEXE/lib gcc_s_dw2-1.dll (0x6e940000)
QtGui4.dll => /cygdrive/c/Users/bschwanke/Desktop/ESUtestEXE/QtGui4.dll (0x65100000)
COMDLG32.DLL => /cygdrive/c/Windows/syswow64/COMDLG32.DLL (0x76680000)
SHLWAPI.dll => /cygdrive/c/Windows/syswow64/SHLWAPI.dll (0x74ee0000)
COMCTL32.dll => /cygdrive/c/Windows/WinSxS/x86_microsoft.windows.common- controls_6595b64144ccf1df_5.82.7601.18201_none_ec80f00e8593ece5/COMCTL32.dll (0x 733e0000)
SHELL32.dll => /cygdrive/c/Windows/syswow64/SHELL32.dll (0x753b0000)
IMM32.DLL => /cygdrive/c/Windows/syswow64/IMM32.DLL (0x74980000)
MSCTF.dll => /cygdrive/c/Windows/syswow64/MSCTF.dll (0x762b0000)
OLEAUT32.DLL => /cygdrive/c/Windows/syswow64/OLEAUT32.DLL (0x767a0000)
WINMM.DLL => /cygdrive/c/Windows/system32/WINMM.DLL (0x73e80000)
WINSPOOL.DRV => /cygdrive/c/Windows/system32/WINSPOOL.DRV (0x74240000)
QtNetwork4.dll => /cygdrive/c/Users/bschwanke/Desktop/ESUtestEXE/QtNetwo rk4.dll (0x6ff00000)
QtSerialPortd.dll => /cygdrive/c/Users/bschwanke/Desktop/ESUtestEXE/QtSe rialPortd.dll (0x6ef80000)
QtCored4.dll => /cygdrive/c/Users/bschwanke/Desktop/ESUtestEXE/QtCored4. dll (0x780000)
setupapi.dll => /cygdrive/c/Windows/syswow64/setupapi.dll (0x76000000)
CFGMGR32.dll => /cygdrive/c/Windows/syswow64/CFGMGR32.dll (0x76770000)
DEVOBJ.dll => /cygdrive/c/Windows/syswow64/DEVOBJ.dll (0x74df0000)
WSOCK32.DLL => /cygdrive/c/Windows/system32/WSOCK32.DLL (0x73120000)
【问题讨论】:
【参考方案1】:为您提供 Microsoft Visual C++ 运行时库的计算机上是否安装了 Microsoft Visual C++ 可再发行软件包?任何没有用于构建程序的编译器版本相同的计算机都需要安装 redist 包,以便可执行文件可以在运行时加载这些库。
This page 有各种可下载的 redist 包的链接。
此外,在您的分布式 DLL 列表中,您同时拥有 QtCore4.dll 和 QtCored4.dll。带有 'd' 的那个是一个调试 DLL,不会被您的 Release 构建的可执行文件加载。您也只是分发 QtSerialPortd.dll 的调试版本,因此您也应该将其切换到发布版本(去掉“d”)。
【讨论】:
比较能工作的 Windows 7 64 位和不能工作的... C++ 2010 x86 Redistributable”以及 x64 Redistributable。不工作的机器只有“Microsoft Visual C++ 2010 x64 Redistributable”,没有x86 Redistributable。 过去遇到过类似的问题,Dependency Walker 对解决这些问题很有帮助。 Jared,如果您将程序构建为 32 位可执行文件(看起来您肯定必须考虑到它在 32 位机器上运行),那么就没有 x86 Redistributable 包很可能是问题所在。尝试安装 x86 Redist 软件包,看看是否能解决问题。【参考方案2】:嗯,我想通了。这是 DB9 串行 com 端口的问题。
应用程序使用串行端口连接到设备。它不工作的计算机上有一个旧的 DB9 串行端口。其他电脑只有 USB 端口。当我们插入 DB9 串行电缆时,应用程序运行良好。
有一些 3rd 方库处理一些串行端口的东西,所以我得看看。
【讨论】:
以上是关于Qt 4.8.4 Release 版本不适用于 Windows 7 64 位的主要内容,如果未能解决你的问题,请参考以下文章
Qt Creator 2.6.2 和 Qt 4.8.4:Qt 版本未正确安装
Spring Saml 不适用于最新的 Spring Security 4.0.0.RELEASE