Additional
dbCAP
AnyDAC
ThinDAC
NCOCI8
Topic: ADPhysDriver shoutdown time out Exception
ADPhysDriver shoutdown time out Exception
Posted: 2007/06/04 09:41
 
ADPhysDriver shoutdown time out Exception :

when i try connect to database and its not found i catch exception and call function to create it and return normal from exception and continue ..
try{
// connect to db
}
catch(...)
{
// not found
// call create one -> inside the creation function disconnect database coponent and change params then connect admin to create one then disconnect from admin then connect to that database
}

all is okey but
when exit the application an exception occured:
"ADPhys...Driver shoutdown time out Exception"
when debug its hang
Note: Every thing in System and environment is perfect.
why!
is there bug in library (release intrfaces , cleanup ,...)
Maybe one solution is to create ADPhys...DriversLink Dynamically via new operator .
Regards .
Re:ADPhysDriver shoutdown time out Exception
Posted: 2007/06/04 11:31
 
Hello

1) This timeout error happens if you have unreleased connection interfaces. This may happen, for example, if you does not free all TADConnection interfaces.

2) AnyDAC has the issue with closing TADPhysManager, just if it is ActiveX or DLL, not explicitly closing ADPhysManager.

PS: Let me see your code, then I will be helping more precise.

Regards,
Dmiry
Re:ADPhysDriver shoutdown time out Exception
Posted: 2007/07/10 00:30
 
I use BCB 6 and AnyDAC 1.12.2 and ORACLE 8/9/10
If during the program is ANY error (bad password, query to unexisted table)
after closing the application some processes still run and then the ADPhysDriver shoutdown time out Exception is shown.
I catch exeption using try - catch method

I use ADConnection.Free() to release connection
to Close() method after error there is no access

What should i do?

Post edited by: lorez, at: 2007/07/10 00:33

Post edited by: lorez, at: 2007/07/10 00:40
Re:ADPhysDriver shoutdown time out Exception
Posted: 2007/07/10 07:51
 
Hello lorez!

With Close you release the connection.
With Free you release memory of the connection component and after that it will no longer exist, that is: you cannot access it. Normally, components will be freed during destruction of form or datamodule, so there is no need to call Free() manually.

Ergo: if Close and Free, then 'Free' after 'Close'. Before 'Close', you shoul close all queries, tables and so on. If you call Free() for a component that is placed on form during design time (the normal way), you should not call Free() in your code.

Regards Knut

Post edited by: knulo, at: 2007/07/10 07:52
Re:ADPhysDriver shoutdown time out Exception
Posted: 2007/07/11 00:56
 
I ve added the Login component and all is correct.
Only but if Service Name is wrong there is such as error of ADPhysDriver.
I use Close() method then Free() method to all components