Are any of the Queries and/or the DB connection active ?
If so - try setting them all inactive and open manually.
Regards
Paul McKenzie
Wellington
New Zealand


Dave O'Brien wrote:
Nothing at all. No code there. There is also no access of the datamodule
from any other form in Create/Destroy.

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of Paul McKenzie
Sent: Wednesday, 9 August 2006 11:50 a.m.
To: NZ Borland Developers Group - Delphi List
Subject: Re: [DUG] Strange access error on application close...

What are you doing (if anything) in the Create and Destroy of the
dataModule ?

Regards
Paul McKenzie
Wellington
New Zealand


Dave O'Brien wrote:

Sorry, the datamodule is the first created, above that code...

begin
 Application.CreateForm(TDataMod, DataMod);
 Application.CreateForm(TfrmMain, frmMain);
 Application.CreateForm(TfrmLogin, frmLogin);
   if frmLogin.ShowModal = mrOK then
   begin

Problem with cutting and pasting...

-----Original Message-----
From: [EMAIL PROTECTED]

[mailto:[EMAIL PROTECTED]

On Behalf Of Paul McKenzie
Sent: Wednesday, 9 August 2006 11:39 a.m.
To: NZ Borland Developers Group - Delphi List
Subject: Re: [DUG] Strange access error on application close...

Not sure about the problem - but I do not see where you create the
DataModule ...
I suspect the is probably at the heart of your problems...

Regards
Paul McKenzie
Wellington
New Zealand


Dave O'Brien wrote:


Application... (Using DBGo)
begin
Application.CreateForm(TfrmMain, frmMain);
Application.CreateForm(TfrmLogin, frmLogin);
if frmLogin.ShowModal = mrOK then
begin
  seID := 0 ;
  datamod.ADOQuery.SQL.Text := 'Select seID from Security...' ;
  datamod.ADOQuery.Open ;
  try
    if not datamod.adoQuery.eof then
      seID := datamod.ADOQuery.FieldByName('seID').AsInteger
    else
      ShowMessage('Invalid Username/Password') ;
  finally
    datamod.ADOQuery.Close ;
  end ;
  if seID <> 0 then
    Application.Run ;
end ;
end.

With the above concept code I am getting a strange error.
"Access violation at address 00490742 in module'test.exe'. Read of
address 00C628C8"

The error occurs if the login is cancelled, does not occur if the

login


is OK'd but the username/password is not found, so it has nothing to

do


with "Running" the app.

If I change the end of the file to:

  if seID <> 0 then
    Application.Run ;
end
else
  datamod.ADOQuery.SQL.Text := 'Anything but a blank string...' ;
end.

It now exits fine...
Any idea why I have to assign some text to the query or the app bombs

on


exit? There are multiple TADOQuery's in the data module, so why don't

I


have to assign something to each of them? Assigning a value only to

that


query at design time also resolves the problem.

Cheers,
Dave.


_______________________________________________
Delphi mailing list
[email protected]
http://ns3.123.co.nz/mailman/listinfo/delphi




_______________________________________________
Delphi mailing list
[email protected]
http://ns3.123.co.nz/mailman/listinfo/delphi

_______________________________________________
Delphi mailing list
[email protected]
http://ns3.123.co.nz/mailman/listinfo/delphi




_______________________________________________
Delphi mailing list
[email protected]
http://ns3.123.co.nz/mailman/listinfo/delphi

_______________________________________________
Delphi mailing list
[email protected]
http://ns3.123.co.nz/mailman/listinfo/delphi



_______________________________________________
Delphi mailing list
[email protected]
http://ns3.123.co.nz/mailman/listinfo/delphi

Reply via email to