Watch, Follow, &
Connect with Us

For forums, blogs and more please visit our
Developer Tools Community.


Welcome, Guest
Guest Settings
Help

Thread: Crash with Windows 7 and terminating my application


This question is not answered. Helpful answers available: 2. Correct answers available: 1.


Permlink Replies: 1 - Last Post: Jul 17, 2014 8:58 AM Last Post By: Tushar Bhagat Threads: [ Previous | Next ]
Markus Humm

Posts: 5,113
Registered: 11/9/03
Crash with Windows 7 and terminating my application  
Click to report abuse...   Click to reply to this thread Reply
  Posted: Oct 28, 2011 7:27 AM
Hello,

something strange is going on in my application and I don't know how to digg deeper to find out the cause.
The application is written in D2007 and uses the Upscene InterExpress Firebird Database driver in version 2.0.2.3
which is used via the dbxadapter30.dll bridge.

The application consists of a com-server and the GUI. The GUI has a login dialog which also has a cancel button.
When I cancel the login the application terminates and sets the com interface variable to nil thus terminating the
com server. The database connection is only in the com server in a data module which now gets destroyed and in
DataModuleDestroy event the SQLConnection gets closed if it is open. Under WIndows XP this works fine but
cancelling the login under Windows 7 raises a MadExcept bugreport which points to dbxadapter30.dll and has this
stack trace:

exception message : Access violation at address 075572A3 in module 'dbxadapter30.dll'. Read of address 07592874.

main thread ($7f0):
075572a3 +007 dbxadapter30.dll DBXBase_Close
05c477fe +012 TECHNO~1.DLL DBXDynalink 655 +1 TDBXDynalinkDriver.Destroy
05ab4734 +008 TECHNO~1.DLL System 35 +0 TObject.Free
05bd43ec +04c TECHNO~1.DLL DBXCommon 4776 +10 TDBXDriverRegistry.FreeAllDrivers
05bd4461 +041 TECHNO~1.DLL DBXCommon 4792 +6 TDBXDriverRegistry.FreeAllLoaders
05bd3965 +019 TECHNO~1.DLL DBXCommon 4515 +2 TDBXDriverRegistry.Destroy
05ab4734 +008 TECHNO~1.DLL System 35 +0 TObject.Free
05b0ff10 +008 TECHNO~1.DLL SysUtils FreeAndNil
05bd9bfc +028 TECHNO~1.DLL DBXCommon 8395 +1 Finalization
05ab52e9 +039 TECHNO~1.DLL System 35 +0 FinalizeUnits
05b007f4 +054 TECHNO~1.DLL madExcept InterceptFinalizeUnits
05ab5622 +056 TECHNO~1.DLL System 35 +0 @Halt0
05ab8208 +040 TECHNO~1.DLL SysInit @InitLib
05cde99f +00b TECHNO~1.DLL technologiestack_dll 75 +0 initialization
77e68fb5 +13c ntdll.dll LdrShutdownProcess
77e68e57 +06f ntdll.dll RtlExitUserProcess
00405778 +0c0 LisaNT.exe System 11963 +81 @Halt0
760733c8 +010 kernel32.dll BaseThreadInitThunk

Since my development machine is still on XP I cannot properly debug this because remote debugging
from a VM to another computer with Win 7 64 bit is a bit hard and I don't like to install Delphi on the other
PC (but I might need to do this). I just tested this issue in a Win 7 32 bit VM as well and here it happens as well.

Other than that the application runs fine on WIndows 7 32 and 64 bit.

Any ideas?

Greetings

Markus
Tushar Bhagat

Posts: 1
Registered: 5/5/10
Re: Crash with Windows 7 and terminating my application  
Click to report abuse...   Click to reply to this thread Reply
  Posted: Jul 17, 2014 8:58 AM   in response to: Markus Humm in response to: Markus Humm
This is still issue with Delphi XE and we are facing similar problem. Please refer following bug report
http://qc.embarcadero.com/wc/qcmain.aspx?d=79117

I think only change in DBXDynalink.pas is not sufficient. We need to recompile this with some library project. I am not sure about it. But it is not mentioned in workaround. I made changes in this file but not able to resolve this bug.
Legend
Helpful Answer (5 pts)
Correct Answer (10 pts)

Server Response from: ETNAJIVE02