Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Application Error 0xc0000142 (https://www.delphipraxis.net/95665-application-error-0xc0000142.html)

negaH 25. Jul 2007 12:16

Re: Application Error 0xc0000142
 
Ich habe jetzt nur eine Methode deines Sources angeschaut

Delphi-Quellcode:
procedure TFrmServerConfig.FormCreate(Sender: TObject);
begin
  if FileExists(GetDataPath+'System.fdb') then
  begin
    DMSystem.dbSystemZeos.Database := GetDataPath+'System.fdb';
    try
      DMSystem.dbSystemZeos.Connect;
    except
      Application.Terminate;
    end;
  end
  else
    Application.Terminate;

  MPGetLanguage(); // Sprache aus System.fdb auslesen (füllt Array aSprache)
  MPSetLanguage(Self); //Verpasst den Komponenten die richtigen Text/Caption Propertys

  slPlugins      := TStringList.Create;

  bActivated     := false;
  sLicenseHolder := aSprache[1379];
  iMaxUser       := 0;
end;
Hier machst du schon mehrere Fehler meiner Meinung nach.

1.) nach dem Application.Terminate gehts im obigen Quelltext weiter. Ich vermute mal das MPGetLanguage() usw. auf eine bestehende Connection zur Datenbank angewiesen sind ?
2.) wichtige Objekte wie slPlugins werden erst nach der Initialisierung der DB erzeugt.

Ich würds so schreiben

Delphi-Quellcode:
procedure TFrmServerConfig.FormCreate(Sender: TObject);
begin
  slPlugins      := TStringList.Create;

  bActivated     := false;
  iMaxUser       := 0;

  if FileExists(GetDataPath+'System.fdb') then
  begin
    DMSystem.dbSystemZeos.Database := GetDataPath+'System.fdb';
    try
      DMSystem.dbSystemZeos.Connect;
    except
      Application.Terminate;
      Exit;
    end;
  end else
  begin
    Application.Terminate;
    Exit;
  end;

  MPGetLanguage(); // Sprache aus System.fdb auslesen (füllt Array aSprache)
  sLicenseHolder := aSprache[1379];

  MPSetLanguage(Self); //Verpasst den Komponenten die richtigen Text/Caption Propertys
end;
Gruß hagen


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:42 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz