Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB General » View Thread |
Messages 1 to 3 of 3 total |
Halt problem |
Thu, Sep 25 2008 11:31 AM | Permanent Link |
"Mauro Botta" | Hi
create a new form , with Engine+database+session edb2.01b5 add a table. in a FormCreate write : edbTable.Open; ..... if xxxxxxx = False then begin edbTable.Close; edbDatabase.Close edbSession.Close edbEngine.Close HALT; end; .... After the Halt procedure program crash with much generic Error. ( with dbisam was all ok ) i Need close the main program without any spash of main form. Is there a workaround ( i dont' move this code out of CreateForm ) |
Thu, Sep 25 2008 12:04 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Mauro,
<< After the Halt procedure program crash with much generic Error. >> I'll check it out, but I'm not sure if this is specific to EDB because after you close the TEDBEngine component, the EDB engine is basically not even available anymore. -- Tim Young Elevate Software www.elevatesoft.com |
Mon, Sep 29 2008 12:46 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Mauro,
<< After the Halt procedure program crash with much generic Error. >> If you don't close the table first, then using Halt will cause an AV. The problem is due to the finalization being called for the EDB units *prior* to the form being destroyed. That causes the EDB components to try and shutdown when some of the resources of the engine have already been destroyed. This post explains it further: http://groups.google.com/group/borland.public.delphi.objectpascal/browse_thread/thread/af8d255eede18d01/c7ab12634a547775?lnk=st&q=delphi+finalization+order+halt#c7ab12634a547775 These *do* work: 1) If you close the table first, then there is no problem. 2) If you call Halt from anywhere else beside the FormCreate method, then there is no problem. 3) If you call Application.Terminate, then there is no problem. So, you're going to have to go with one of these three workarounds. -- Tim Young Elevate Software www.elevatesoft.com |
This web page was last updated on Monday, May 6, 2024 at 12:23 AM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |