Unsolved This application has requested the Runtime to Terminate in an unusual way
-
Hello All,
I have a user who occasionally gets the following error message:
"This application has requested the Runtime to terminate in an unusual way. Please contact the application's support team for more information."
It only occurs after he enters a large number of transactions from one particular screen without exiting the program (by large I mean 20 - 30 transactions). If he only does one or two transactions and leaves, the problem never occurs.
I did some research prior to posting here, and I've seen some cases where the abort() function may cause this...but I've searched my source code and I do not use abort() anywhere in my system. I've also heard of cases where missing DLL's will sometimes cause this...but like I said, the user can use the screen without any problems as long as they only do a few transactions at a time...so the dll's I need must be there or it wouldn't let us get that far.
Anyone have any idea of what might be causing this or what I can do to correct?
Thanks,
Scott
-
@Scott-Krise said in This application has requested the Runtime to Terminate in an unusual way:
"This application has requested the Runtime to terminate in an unusual way. Please contact the application's support team for more information."
This is the standard error message when your application is crashing.
It only occurs after he enters a large number of transactions from one particular screen without exiting the program (by large I mean 20 - 30 transactions). If he only does one or two transactions and leaves, the problem never occurs.
I did some research prior to posting here, and I've seen some cases where the abort() function may cause this...but I've searched my source code and I do not use abort() anywhere in my system. I've also heard of cases where missing DLL's will sometimes cause this...but like I said, the user can use the screen without any problems as long as they only do a few transactions at a time...so the dll's I need must be there or it wouldn't let us get that far.
This probably depends on how you are accessing dlls. If you are using the standard dll case, missing dlls should already stop your application during start-upu and does not go further. In most cases it provides you with the name of the missing dll. Eventually you have to iterate until all missing dlls where copied to right location.
Qt allows you also to load dynamically libraries during run-time with QLibrary. I have no experience there, but I guess it might cause cases as you describe. However, you have the source therefore you are the only developer knowing if you have used QLibrary.
The abort function is typically not called by any application directly. It basically marks the dead end of the error recovery.
If your customer can reproduce the error, you would need to do the standard thing for developers and start debugging.
Sometimes you are receiving some sort of a dump, which helps you to locate the origin of the problem better to my understanding. However, I have no real experience there. The debugging tracking was successful so far for me.
Also there might be possibilities based on the tool chain you are using.
For enabling others to give you more advice you need to more details on compiler and its version and the propoer OS. -
Yes, I agree that if it were a DLL problem, it should stop immediately upon entering the program.
There are no occurrences of QLibrary in my source code, so that's not it.
We use version 4.4.3 of QT and this is a windows 7 system having the problem.
Thanks
-
Hi,
Can that customer of yours provide you with a details of theses transaction so that you can reproduce this yourself ?
4.4.3 ? Are you locked to that old and outdated version ? If you can't upgrade to Qt 5 then possible to 4.8.7 which is the latest and last version of the Qt 4 series.
-
Yes, I realize we are on an old version of QT...I've discussed it with you in the past. We are trying to get the QT upgrade to be on the top of our "to do" list at the moment, so hopefully we can do that soon.
I could get the details from the customer to try to reproduce the problem on my test system...and I will do certainly do that...but right now I'm simply trying to identify possible causes of the error so I can start troubleshooting. Problems like this which are dependent on multiple entries being entered to cause them can be tough to debug and/or reproduce.
-
Then try to "overload" your application with a big amount of these entries artificially.