DOA DLL Hangs

rysiek

Member
Hi,
I've got DOA 'exe' application and
I'm opening a form from DOA DLL, sharing session by
assigning:
extern "C" __declspec (dllexport) HWND preopen(HWND parent, void** SVC) {
...
dataModule->ses->ExternalSVC = *SVC;
form->ShowModal();
...
}
all database access controls are grouped in
DataModule.
A form opens and works fine, but after few seconds it hangs. I cannot trap where (and why).
If I build the source as an exe application all works fine.
Using XP Prof, BCB6, Oracle 9.2

------------------
 
Are you passing anything else between the host application and the DLL, except for the SVC and Window Handle?

------------------
Marco Kalter
Allround Automations
 
No, just two of them. Once ago there was more param's (char*) but behavior was the same (hang).
Hmm, for now, I'm not sure if it is 'DOA generated' problem. When I changed my code to pass pointer to a session and use sesion->Share _and_ explicitly add ip3000v6.lib to BCB project (I use InfoPower data controls) the problem partly dissapears. Partly, because when I call DLL from DOA applications it works fine (with use of Share method). When I call DLL from nonDOA app (have to use SVC assign) DLL still hangs.
Could it be, that assigning SVC is the problem's origin ?
 
By passing the ExternalSVC you are making the host application and DLL as independent as possible. To verify if this is actually causing the problem, pass the username, password, and database instead (as PChar) and make a new connection within the DLL. If this works correctly, then the ExternalSVC is somehow causing the problem.

------------------
Marco Kalter
Allround Automations
 
Back
Top