segunda-feira, 13 de julho de 2009

DBExpress X TThread

Amigos!

Mais uma "descoberta" que talvez lhe tenha utilidade.

O caso é que em programas multi thread, se a thread for utilizar uma conexão DBExpress, é necessário chamar o CoInitialize(nil) e CoUninitialize.

No mínimo suas mensagens de erro em relação ao banco melhorarão uma vez que a mensagem abaixo não significa nada:


OLE DB error occured. Code 800401F0h.
CoInitialize has not been called.


Ao passo que a mensagem abaixo fica beeeeem mais clara:


[DBNETLIB][ConnectionOpen (Connect()).]SQL Server inexistente ou acesso negado.


http://support.codegear.com/br/article/37092

Minha lista de blogs