PDA

View Full Version : Good on LINUX+WINDOW VISTA+ XP, NOT ON WINDOWS 7



giusepped
26th June 2010, 14:31
Environment:
MinGW
Qt 4.5.0 + QwtPlot
QtWbKit + QSql

The application I built runs well on Windowx XP, Windows Vista Business (32), Linux (Virtual Machine).
But for strange reasons the application crashes on Windows 7.
Shall I update to new Qt? Or the problem is still there?
Which kind of tests shall I do?
regards

tbscope
26th June 2010, 15:42
The obvious first thing to do is see where it crashes.

squidge
26th June 2010, 23:00
Perhaps your application is unstable, but only Windows 7 causes it to crash? Or perhaps you depend on some function or library that isn't available on Win 7.

Either way, I doub't the fault is Qt itself.

giusepped
27th June 2010, 02:01
The app crashes at the start only in Windows 7.
I developed the app on Vista. A client reported to me that it crashes under Win 7.
So now I am trying to install Win 7 and reproduce the problem.
But, now, I am just wondering why this happens. Multi-platform means that I would not have to worry about problems beneath the wood.
G

ChrisW67
27th June 2010, 02:30
IIRC Qt 4.6.0 was the first version with any sort of official support for Windows 7. That said, I have Qt 4.5.3 and 4.6.2 applications quite happily running on 32- and 64-bit Windows 7 machines so I doubt this is a systemic failure of Qt. It is far more likely that you are assuming something that is no longer valid on Windows 7, e.g. falling foul of newly enforced write restrictions or registry virtualisation, or a dangling pointer you were getting away using with is no longer tolerated. You haven't provided anything like enough information for us to tell.

Until you at least try to reproduce the error on a pristine Windows 7 install you won't know if the user's report is even vaguely accurate.

giusepped
2nd July 2010, 08:37
I installaed a Win 7 on a virtual machine. And I can reproduce the crash.
The same application which is good on XP, VIsta and LISTA ,crashes in Win 7.
With gdb it says:
Error creating process (error 740).
I analyzed the software with depends.exe and it says that
the IESHIMS.dll cannot be open. Is that the problem?

iuha
2nd July 2010, 20:00
Have you tried to run in admin mode?
Maybe it needs to do admin process and since it doesnt have the privilege it can crash.
I had some problems in the past with DB before, it helped getting the program into admin mode.

giusepped
5th October 2010, 15:05
Yes, gdb and other tools need administrtive permission. So, when I run the prompt I run it as administrator.
for the compatibility problem, I discovered that a variable in my code was not initialized. In XP and Vista this fact seems to be negligible, but not in Win7. In gdb I get always a seg fault to a kernel function called waitForSingleObjectE(). I don't have any idea what is that function, but just initializing properly all variables in my code solve (apparently) the problem.
thanks to all.