GTask

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:
  • tEinmal = Einmalig
  • tTgl = täglich
  • tWoechtl = wöchentlich
  • tMtlTag = monatlich (Best. Tag)
  • tMtl = monatlich (Wochenintervall)
  • tSysstart = beim Systemstart
  • tIdle = wenn Rechner Idle
  • tLogin = Beim Login
 
  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

Zur Übersicht