![]() |
Dateien beim Programmstart kopieren
Hallo,
für die Ausführung meines Programms benötige ich bestimmte Datenbankdateien, die des öffters aktualisiert werden. Ich habe einen Menüpunkt "Datenbankdateien kopieren" und ich habe einen Einstellungsdialog, in dem ich festlegen kann, dass die Dateien beim Programmstart automatisch kopiert werden. Soweit so gut. Meine Frage ist, wohin ich diese Routine, die beim Programmstart die Dateien kopiert, am besten hinpacke: Schlecht ist, wenn ich das OnActivate der Form benutze, weil ich öfters auch modale Fenster habe und das OnActivate Ereignis dann beim schließen des modalen Fensters ausgelöst wird und ich da ja dann nix mehr kopieren will. Benutze ich das OnCreate Ereignis der Form, werden die Dateien schon vor Sichtbarwerden der Form kopiert, was unschön ist, wenn ich die Nachfrage bekomme, ob vorhandene Dateien überschrieben werden sollen, da diese Nachfrage dann ebenfalls vor Erscheinen der Hauptform erscheint. Wie kann ich das am Besten machen? Gruß Gambit |
Re: Dateien beim Programmstart kopieren
Du könntest einen Timer benutzen, der nach einer bestimmten Zeit, nach dem Start, die Routine ausführt. :zwinker:
mfg freak |
Re: Dateien beim Programmstart kopieren
Umständlicher geht es nicht mehr. :roll:
Was hindert dich daran bei OnActivate zu prüfen, ob die Kopier-Routine schon ausgeführt wurde?
Delphi-Quellcode:
var
bFirstTime: Boolean; |
Re: Dateien beim Programmstart kopieren
Ja, daran hatte ich auch schon gedacht, auch daran einen Counter zu machen der jedesmal hochzählt wenn OnActivate eintritt. Dann könnte ich von diesem Integer das Kopieren abhängig machen. Das erschien mir nur alles zu trivial... :oops:
Gruß Gambit |
Re: Dateien beim Programmstart kopieren
Habs jetzt mit boolean gemacht, die im OnCreate auf false gesetzt wird, das Kopieren im OnActivate davon abhängig gemacht und nach dem Kopieren im OnActivate auf true gesetzt. Hoffe ich habe da jetzt nicht wieder nen Denkfehler drin, zumindest gehts so erstmal...
Gambit |
Re: Dateien beim Programmstart kopieren
du könntest das ganze natürlich auch im OnCreate machen und bevor du mit dem kopieren anfängst creierst du manuell ein Statusfenster in dem du schon anzeigst das du Daten kopierst.
|
Re: Dateien beim Programmstart kopieren
ja, das Statusfenster habe ich ja schon beim Kopieren aber so wollte ich es halt nicht. Das Hauptfenster soll zu sehen sein...
|
Re: Dateien beim Programmstart kopieren
Was auch noch möglich sein müsste wäre das du den kopieren Prozess in eine Extra Methode packst (public vom Mainform). Und dann in der Projectdatei direkt nach dem Create des Mainforms, dieses sichtbar machst und anschließend auch von der Projektdatei aus diese Methode des Mainforms aufrufst.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:44 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