![]() |
VCL-Anwendung ohne sichtbares Fenster starten
Hallo zusammen,
ich möchte mir ein kleines Tool schreiben, welches ich in den Autostart integrieren möchte. Sinn dieses Programmes ist es, zu prüfen, ob ein anderes Programm vor >=x Tagen gestartet wurde. Falls nein, dann soll das Tool dieses Programm aufrufen und in eine INI-Datei das Datum der letzten Ausführen speichern. Soll also eine Art "Mikro-Taskplaner beim Systemstart" werden (Es soll ein Programm für Backup-Zwecke mind. alle 3 Tage - nach dem Systemstart - ausgeführt werden). Der Windows-Taskplaner kommt für mich nicht in Frage, da 1. deaktiviert und 2. ein kennwortgeschütztes Konto benötigt wird, welches ich auf meinem privaten REchner weder habe noch brauche :-) Meine Frage: Ich möchte nun, daß das Programm "im Hintergrund" gestartet wird, d.h. es soll keine DOS-Box-Anwendung werden und es sollen auch keine Fenster angezeigt werden. Wie gehe ich denn da am besten vor? Hab mal testweise eine ShowMessage bei Form1.Create eingefügt und beim Projekt-Quellcode Application.ShowMainForm := False gesetzt. Das Ergebnis ist das Gewünschte, aber irgendwie kommt es mir doch sehr unsauber vor :oops: Hat jemand von Euch eine andere, saubere Lösung für mich parat?? SCRaT //EDIT: Das Programm soll, nachdem die aufgerufene Anwendung ausgeführt wurde, wieder beendet werden. |
Re: VCL-Anwendung ohne sichtbares Fenster starten
Sollen überhaupt keine Fenster angezeigt werden? Nie?
|
Re: VCL-Anwendung ohne sichtbares Fenster starten
Richtig, ich möchte lediglich eine andere Anwendung starten, nachdem geprüft wurde, ob diese innerhalb der letzten x Tage noch nicht ausgeführt wurde. Dazu möchte ich keinerlei Fenster (also meines Tools) anzeigen lassen...
EDIT: Mir ist grad eine Idee eingefallen: Könnte ich die "Prüfroutine" nicht einfach in die Projektdatei einfügen und sämtliche Formulare rauslöschen? |
Re: VCL-Anwendung ohne sichtbares Fenster starten
Moin Scrat,
das sehe ich prinzipiell drei Möglichkeiten:
|
Re: VCL-Anwendung ohne sichtbares Fenster starten
Danke für die Antwort!!!
Mit unsauber meinte ich - wie Du schon sagst - dass eine VCL-Anwendung etwas zu übertrieben ist.. Dann werde mich mal daran machen, meinen ersten Versuch in Sachen Dienst-Programmierung zu unternehmen... Falls Fragen aufkommen sollten (leider sehr wenige bis gar kein Tutorial beim googlen gefunden), dann seid Ihr ja - wie immer - zur Stelle :-) Liebe Grüsse, SCRaT |
Re: VCL-Anwendung ohne sichtbares Fenster starten
Ok, habe mir mal ein Mini-Dienst mit einer ShowMessage nach 5s (Timer) erstellt. Funktioniert auch schon ganz gut. Nur, wie kann ich denn den Dienst wieder (nach dem Showmessage) beenden?!? Ein Service1.Terminate, Application.Terminate etc. war leider nicht erfolgreich...
SCRaT //EDIT: Die Forensuche brache ein Service1.DoStop; zum Vorschein, leider bekomme ich dann eine Exception und der Dienst läuft weiter... Gute N8 und bis morgen, SCRaT |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:08 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