My developing environment is like this:
*Windows 7 Ultimate 64 bit (later I also tried on Windows 7 Ultimate 32 bit in virtual machine)
*Qt Creator 2.8.0 (qt-creator-windows-opensource-2.8.0.exe from download.qt.io, which is based on Qt 4.8.4, MSVC 2010,32bit shown in about dialogue window), installed in C:\Qt\qtcreator-2.8.0.
*Qt 4.8.5 (qt-win-opensource-4.8.5-mingw.exe from download.qt.io), installed in C:\Qt\4.8.5.
*mingw gcc 4.4 (MinGW-gcc440_1.zip), installed in C:\Qt\mingw.
And Qt Creator are configured like this:
* Qt version: C:\Qt\4.8.5\bin\qmake.exe
* Compiler: C:\Qt\mingw\bin\gcc.exe
I built my own program well and deployed the application both in my computer with Qt environment and other computers without Qt environment. It contains myapp.exe, libgcc_s_dw2-1.dll, mingwm10.dll, QtCore4.dll, QtGui4.dll, QtNetwork4.dll, phonon4.dll, some 3rd party DLLs and plugins like phonon_backend and imageformats. It seemed to run well until I found an APPCRASH problem:
Problem Event Name: APPCRASH
Application Name: myapp.exe
Application Version: 0.0.0.0
Application Timestamp: 56ed4592
Fault Module Name: QtCore4.dll
Fault Module Version: 4.8.5.0
Fault Module Timestamp: 51cc9d40
Exception Code: c0000005
Exception Offset: 0005d13c
OS Version: 6.1.7601.2.1.0.256.1
Locale ID: 2052
Additional Information 1: 0a9e
… …
Problem Event Name: APPCRASH
Application Name: myapp.exe
Application Version: 0.0.0.0
Application Timestamp: 56ed4592
Fault Module Name: QtCore4.dll
Fault Module Version: 4.8.5.0
Fault Module Timestamp: 51cc9d40
Exception Code: c0000005
Exception Offset: 0005d13c
OS Version: 6.1.7601.2.1.0.256.1
Locale ID: 2052
Additional Information 1: 0a9e
… …
To copy to clipboard, switch view to plain text mode
The crash occurs randomly especially after long term running (one day or more). Sometimes when crash happens, myapp still works normally (show other dialogs or communicate with cloud server).
I have seen the myapp.exe through Dependency Walker (v2.2 for x86) also and it shows me red color in Link Checksum field of QtCore4.dll (and IESHIMS.dll missing). The help contents of Dependency Walker tell it means that checksum does not match the actual module checksum, or the module has been modified after it was built.
But I do copy Qt library DLLs from C:\Qt\4.8.5\bin\. I am also sure MinGW 4.4 is used as compiler.
So what is wrong about APPCRASH? Is link checksum issue related to that problem? Or some platform confusion over 32 bit and 64 bit system? Are there any solutions? Thanks a lot.
P.S.1
I also tried compiling a Qt example (named books) on Windows 7 Ultimate 32 bit in virtual machine and deploying on other virtual machine without Qt environment. But link checksum field of QtCore4.dll is red. I also tried changing developing environment to this:
*Qt 4.8.7 (qt-opensource-windows-x86-mingw482-4.8.7.exe from download.qt.io), installed in C:\Qt\4.8.7.
*mingw gcc 4.8.2 (i686-4.8.2-release-posix-dwarf-rt_v3-rev3.7z from download.qt.io), installed in C:\Qt\mingw32.
But still link checksum field of QtCore4.dll is red.
P.S.2
I noticed that modify datetime of QtCore4.dll and QtCored4.dll in C:\Qt\4.8.x\bin varied to the datetime of its installing, while other DLLs’ remain as when they complied. Is this normal?
Bookmarks