Do you know what the cause of 'External Exception C0000029', and how to handle it ?
Thanks in advance.
Regards,
Charles.
When does this happen? Tell us more about the circumstances surrounding
this error.
-- YH --
--
Any e-mail sent to me from the newsgroups will be ignored. Please confine
your posts to the newsgroups and DO NOT reply to this e-mail account.
Thanks for the response.
I'm using BCB 5 and this external exception was happened inside application which has some multiple threads who handle TCP/IP communication and each thread will update some records inside the SQL database.
And the main form will show all the TCP/IP comm. status.
The funny thing, even though I already use try-catch block inside the whole functions, it still can not catch this external exception.
So I don't really know when this thing happened, but my suspect is that one happened inside the thread.
Thanks.
Regards,
Charles.
I had problems to do SQL-statements inside of a thread without
"Synchronize". The database components like TDatabase and TQuery are not
threadsafe. I found a hint somewhere to use different TDatabase and TSession
for every thread, but it still doesnt work here.
Try to use Synchronize for your database actions then it should work.
Harald
Thanks also for the suggestion.
But unfortunately, I already do the synchronisation inside the thread, even make the thread' priority to tpLower.
So do you have another idea ?
Thanks in advance.
Regards,
Charles.
I once did some SQL in Delphi (some years ago though)
What I remember is that you should do database access only in your main vcl
thread.
I tried to work around it, but I never got it working. In the main thread it
works fine.
Grtz,
Adrian.
"Charles" <Char...@Inputronics.com.sg> schreef in bericht
news:3f025c5c$1...@newsgroups.borland.com...
>
>Hi Harald,
>
>Thanks also for the suggestion.
>But unfortunately, I already do the synchronisation inside the thread, even make the thread' priority to tpLower.
>
>So do you have another idea ?
From searching on
http://groups.google.com/advanced_group_search
it seems Windows thread management has a chain of exception records
called EXCEPTION_REGISTRATION_RECORD
The name of exception C00000029 is apparently this
STATUS_INVALID_UNWIND_TARGET (Exception C0000029) ?
and below is what a Microsoft representative said it meant.
It's an exception rosen in the Unwind code when one of the
EXCEPTION_REGISTRATION_RECORD is "out-of-order".
This can be caused by stack corruptions / stack overflows
or by manually adjusting the list of EXCEPTION_REGISTRATION_RECORD.
Searching on google.com for Exception C0000029 found this useful info
http://www.delphifaq.com/fq/q1061.shtml
Graeme