Moin,
ich hab das jetzt probiert und nur die Datenbankverbindung im OnCreate-Event des Datamodules.
Delphi-Quellcode:
procedure Tfrmdata.DataModuleCreate(Sender: TObject);
var config: tinifile;
i: integer;
begin
config:= tinifile.Create(extractfilepath(paramstr (0))+'
config.ini');
try
try
with SQLConnect
do
begin
HostName:= config.ReadString('
DB-Server','
host','
');
user:= config.ReadString('
DB-Server','
user','
');
password:= config.ReadString('
DB-Server','
passwort','
');
port:= strtoint(config.ReadString('
DB-Server','
port','
0'));
connect;
end;
tbauftrag.Open;
tbstatus.Open;
tbgeraete.Open;
tbartikel.Open;
tbstatistik.Open;
tblager.Open;
tbmessage.Open;
qutechniker.Open;
except
showmessage('
Fehler beim Verbinden mit der Datenbank');
frmconnect.showmodal;
end;
finally
config.free;
end;
end;
Dummerweise ändert das ja aber nix an der Tatsache, das das Hauptform trotzdem geöffnet wird wenn ein Fehler auftritt und ich dann schön im Rhytmus meines Timers, der ne Abfrage macht, Fehlermeldungen bekomme und die DBEdits sinnlos rumliegen.
Ich hab den Eindruck, ich muss mir noch sowas wie nen Splashscreen basteln, der dann als MainForm herhalten muss. Dann ruf ich das bisherige MainForm mit im OnCreate des Datamodules auf.
Kann man das nicht irgendwie besser lösen?