Mit der folgenden Wrapperklasse lassen siche schnell un einfach Task für den Windows Taskscheduler (Geplante Tasks) erstellen
Die Klasse ist vorbereitet, um daraus eine Komponente zu machen..... wer Lust hat.....
GTask |
||
| public: | __fastcall GTask(TComponent* Owner); | Konstuktor. Da die Klasse (noch?) keine Komponente ist, wird hier NULL übergeben. |
| __fastcall ~GTask(); | Destruktor | |
| bool __fastcall AddTask(); | Fügt einen Task in die Taskliste ein. Der Rückgabewert zeigt an, ob dies erfolgreich war. Im Fehlerfall, kann mit GetError() der Fehler ermittelt werden. | |
| bool __fastcall DeleteTask(); | Löscht einen Task aus der Taskliste. Die Eigenschaft TaskName ist mit dem zu löschenden Task zu versorgen | |
| String __fastcall GetError(); | Liefert den letzen Fehler als String zurück | |
| __property | String TaskName | Der Name für den zu bearbeitenden Task zum Setzen oder Löschen |
| TStringList* Taskliste | Gibt eine Liste aller vorhandenen Tasks im Scheduler zurück | |
| String Taskpfad | Gibt den Pfad zum Ordner der Task zurück | |
| String Command | Das auszuführende Programm, welches der Task aufruft | |
| String Parameter | Parameter, die an das auszuführende Programm übergeben werden | |
| String WorkingDir | Arbeitsverzeichnis für das auszuführende Programm | |
| String Kommentar | Wahlfreie angabe eines Kommetars | |
| String User | Benutzername unter dem der Task ausgeführt werden soll (wahlfrei) | |
| String Passwort | Passwort des Benutzers (wahlfrei) | |
| bool OnlyLogIn | Gibt an, ob der Task nur bei angemeldetem Benutzer ausgeführt wird | |
| bool Active | Gibt an, ob der Task aktiv ist | |
| void SetStartDatumZeit(unsigned short Tag,unsigned short Monat,unsigned short Jahr,unsigned short Stunde,unsigned short Minute); | Setzt das Datum und die Zeit für den Startzeitpunkt | |
| void SetStartDatum(unsigned short Tag,unsigned short Monat,unsigned short Jahr); | Setzt das Datum für den Startzeitpunkt | |
| void SetStartZeit(unsigned short Stunde,unsigned short Minute); | Setzt die Zeit für den Startzeitpunkt | |
| TDateTime StartZeitpunkt | Gibt den Startzeitpunkt als TDateTime-Objekt zurück (nur lesen) | |
| EN_ZeitArt ZeitArt | Zeigt an, um welche Art Task es sich handelt:
|
|
| unsigned short Tagesintervall | Bei täglichem Task: der Tagesintervall |
|
| unsigned short Wochenintervall unsigned short Wochentag |
Bei wöchentlichem Task: der Wochenintervall und der Wochetag Für den Wochentag stehen Konstanten (siehe MSDN) zur Verfügung |
|
| long Monatstag short Monate |
Bei monatlichem Intervall mit best. Tag: der Tag des Monats Die Monate Für die Monate stehen Konstanten (siehe MSDN) zur Verfügung |
|
| unsigned short Monatswoche unsigned short Monatswochentag short Monate |
Bei monatlichem Intervall mit Wochenintervall: die Woche der Wochentag die Monate Für alle drei stehen Konstanten (siehe MSDN) zur Verfügung |
|
| unsigned short Idlezeit | Bei einem Idle Task: die Idlezeit |
|
| void SetEndDatum(unsigned short Tag,unsigned short Monat,unsigned short Jahr); | Setzt den Endzeitpunkt (wahlfrei) eines Tasks | |
| TDateTime EndZeitpunkt | Gibt den Endzeitpunkt als TDateTime-Objekt zurück (nur lesen) | |
| int WdhIntervall int WdhDauer bool WdhKillTask |
Bei einer Wiederholung des Task der Intervall die Dauer ob der Task gelöscht werden soll |
|
| bool RemoveTask | Zeigt an, ob der Task gelöscht werden soll | |
| bool KillTaskAfter int KillTaskAfterStunden int KillTaskAfterMinuten |
Zeigt an, ob der laufende Task nach den angegebenen Stunden und angegebenen Minuten gelöscht wird |
|
| bool StartTaskAfterIdle WORD StartTaskAfterIdleMinuten WORD StartTaskAfterIdleMinutenRetry |
Zeigt an,ob der Task erst nach einer Idelzeit vom den angegebenen Minuten gestartet wird oder wenn das nicht geht, wann es wieder versucht wird |
|
| bool KillTaskIfNotIdle | Zeigt an, ob der Task beendet wird, wenn der Rechner nicht im Leerlauf ist | |
| bool NoAkku | Zeigt an,ob der Task gestartet werden soll, wenn der Rechner im Batteriebetrieb läuft | |
| bool KillTaskIfAkku | Zeigt an, ob der Task gestartet werden soll, wenn der Rechner im Batteriebetrieb läuft | |
| bool StartComputer | Zeigt an, ob der Rechner reaktiviert werden soll | |
Es ist unerlässlich, bei einem komplexen Task die Zusammenhänge der einzelnen Komponenten zu kennen. Dazu ist der Windowsdialog zum Einrichten eines Tasks hilfreich und die Hilfe
Download Klasse
Download Demoprojekt