![]() |
Initialisieren einer Anwendung - wie am besten?
Hallo zusammen,
Meine Anwendung braucht, bevor sie loslegen kann, einiges an Initialisation. - Ist die Hilfedatei vorhanden, wenn ja, einbinden ... - konnte, sagen wir, die Soundkarte initialisiert werden? - sind alle benötigten DLL's auch wirklich da und in der richitgen Version? Meine Fragen: Wohin packt man das am besten? und Was passiert, im Fehlerfall? Ich frage deshalb, da ich bis jetzt soetwas im OnCreate der Hauptform erledigt habe. Klappt auch gut, aaaaber: wenn hier ein Fehler auftritt, was dann? Application.Terminate hilfe mir nix, denn bis das wirkt, hat längst das OnShow versucht, etwas mit einer Klasse zu machen, die durch eine fehlende DLL nicht richtig vom Create instanziiert werden konnte. Wie teile ich meinem Programm am "schönsten" mit, daß beim Create was schief ging, und es sich gleich alles weitere gelaufe sparen kann. ;-) Klar, ich kann einfach eine völlig globale Variable nehmen, so nach dem motto [delphi] if CreateOk then Application.Run [{delphi] Aber ist das wirklich guter Stil? Fragende Grüße Marco |
Re: Initialisieren einer Anwendung - wie am besten?
Ich würds in der .dpr Datei direkt machen, noch bevor die ganzen Formulare erstellt wurden:
Delphi-Quellcode:
Grüße
program Projekt1;
uses Forms, Main in 'Main.pas' {Form1}; {$R *.res} begin // hier Deine Initialisierung vornehmen // und den nachfolgenden Code erst dann ausführen, wenn // alles geklappt hat Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; end. Thomas |
Re: Initialisieren einer Anwendung - wie am besten?
Ich würde es auch vor dem erstellen jeglicher Forms machen denn der Sinn deiner Überprüfung ist doch gerade der, das du wissen willst ob die Forms überhaupt benötigt werden.
Entsprechend würde ich es auch in der Projektdatei machen (kann ja auch nur ein Funktionsaufruf einer Class-Funktion sein) |
Re: Initialisieren einer Anwendung - wie am besten?
Hallo zusammen,
Vielen Dank für die Antworten. Oh mann, und ich dachte schon, ich hätte einen wahnsinns Stilbruch begangen, denn genauso, zu Beginn der Anwendung, hätte ich es auch machen wollen - und tu das jetzt. ;-) Einen schönen Abend Marco |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:20 Uhr. |
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-2025 by Thomas Breitkreuz