Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Task Scheduling Vista / XP (https://www.delphipraxis.net/134199-task-scheduling-vista-xp.html)

Prototypjack 17. Mai 2009 17:58


Task Scheduling Vista / XP
 
Moin,

Nachdem ich jetzt seit knapp 4 Stunden recherchiere, bin ich zu einer einzigen Frage gelangt: Kann es denn wirklich sein, dass es in den weiten des Internets keinen freien Weg gibt über Delphi die Aufgabenplanung von Windows XP / Vista / was-auch-immer anzusprechen?
Ich habe genau eine vielversprechende Bibliothek / Komponente gefunden, die tatsächlich nützlich aussieht, aber leider proprietär ist, was sie für mich gänzlich uninteressant werden lässt (siehe VCL Scheduling Agent).

Ach ja: Die Lösung der JCL ist zwar schön und gut, aber sie arbeitet mit dem alten Format, ist teilweise zu undurchsichtig um dem ganzen Projekt zu vertrauen und ist auch höllisch merkwürdig / schwer anzusprechen (Beispiel: Es ist zwar schön und gut sich vorzunehmen ein Interface zu schreiben, aber bei den Triggern dann Direktzugriff zu erfordern ist auch nicht das Gelbe vom Ei bzw. führt den Gedanken ad absurdum. -> Hat von euch jemand schon einmal versucht einen Task mit der JCL zu erstellen?).

Gibt es tatsächlich keine einzige Möglichkeit diese Aufgabenplanung befriedigend anzusprechen? Ich hoffe ihr habt da noch irgendwo eine Klasse in der Hinterhand, die ich übersehen habe ;)

Grüße und Danke,
Max

omata 17. Mai 2009 18:09

Re: Task Scheduling Vista / XP
 
Was genau verstehst du unter Aufgabenplanung?
Meinst du im Explorer->Systemsteuerung->"Geplante Tasks"?
Oder willst du innerhalb deiner Anwendung Threads einsetzen?

MagicAndre1981 17. Mai 2009 18:21

Re: Task Scheduling Vista / XP
 
er will wohl Tasks aus seinem Programm verwalten.

Das kannst du über schtasks.exe machen. Du musst es aus deinem Programm mit den passenden Parametern aufrufen.

Dezipaitor 17. Mai 2009 20:36

Re: Task Scheduling Vista / XP
 
Zitat:

Zitat von Prototypjack
Ach ja: Die Lösung der JCL ist zwar schön und gut, aber sie arbeitet mit dem alten Format, ist teilweise zu undurchsichtig um dem ganzen Projekt zu vertrauen und ist auch höllisch merkwürdig / schwer anzusprechen (Beispiel: Es ist zwar schön und gut sich vorzunehmen ein Interface zu schreiben, aber bei den Triggern dann Direktzugriff zu erfordern ist auch nicht das Gelbe vom Ei bzw. führt den Gedanken ad absurdum. -> Hat von euch jemand schon einmal versucht einen Task mit der JCL zu erstellen?).

Die JEDI Gemeinde macht ihre Arbeit freiwillig! Das bedeutet, dass Änderungen, die jede Windowsversion auftreten, von der Jedi-Gemeinde per Hand nachgezogen werden müssen. Das geht jedoch nur sofern es auch die Kräfte dafür gibt.
Also wenn du von der JEDI so sprichst, dann kann man eigentlich erwarten, dass du nach am Ende deiner Recherche für die JCL/JVCL/JWA eine Klasse/Komponente einbringst, die deinen Erwartungen entspricht.

Wenn du Verständigungsschwierigkeiten mit den englischsprachigen Mitgliedern haben solltest, dann kann ich dir auch den Zugang für die Einreichung einer Komponente/Klasse/Header Übersetzung gewähren.


Die TaskScheduler API gibt es in zwei Versionen: http://msdn.microsoft.com/en-us/library/aa383614(VS.85).aspx
Beide sind über COM realisiert, was bedeutet, dass man sie auch direkt von Delphi aus ansprechen kann. Dazu ist es aber notwendig, dass man die Grundlagen von COM und der TaskScheduler API kennt.
Ich schlage daher vor, dass du dir beide Grundlagen einverleibst und dann dich bei mir meldest, wie man das am besten (für Delphi) hinbekommen könnte.

Prototypjack 18. Mai 2009 08:13

Re: Task Scheduling Vista / XP
 
Moin,

Zitat:

Zitat von Dezipaitor
Die JEDI Gemeinde macht ihre Arbeit freiwillig! Das bedeutet, dass Änderungen, die jede Windowsversion auftreten, von der Jedi-Gemeinde per Hand nachgezogen werden müssen. Das geht jedoch nur sofern es auch die Kräfte dafür gibt.
Also wenn du von der JEDI so sprichst, dann kann man eigentlich erwarten, dass du nach am Ende deiner Recherche für die JCL/JVCL/JWA eine Klasse/Komponente einbringst, die deinen Erwartungen entspricht.

Wenn du Verständigungsschwierigkeiten mit den englischsprachigen Mitgliedern haben solltest, dann kann ich dir auch den Zugang für die Einreichung einer Komponente/Klasse/Header Übersetzung gewähren.


Die TaskScheduler API gibt es in zwei Versionen: http://msdn.microsoft.com/en-us/library/aa383614(VS.85).aspx
Beide sind über COM realisiert, was bedeutet, dass man sie auch direkt von Delphi aus ansprechen kann. Dazu ist es aber notwendig, dass man die Grundlagen von COM und der TaskScheduler API kennt.
Ich schlage daher vor, dass du dir beide Grundlagen einverleibst und dann dich bei mir meldest, wie man das am besten (für Delphi) hinbekommen könnte.

Entschuldigung wenn meine Äußerung etwas bissig klang, das lag auf keinen Fall in meiner Absicht! Ganz im Gegenteil: Die Erzeugnisse der JEDI sind mit das Beeindruckendste, was ich aus dem Delphi Bereich kenne und schätze!

Ich werde mich nun, wie es MagicAndre1981 vorschlug, mit dem Schtasks-Programm auseinandersetzen, denn ich wusste nicht, dass es so auch geht. Sollte mir die Lösung aber nicht genügen, dann werde ich mich vermutlich selbst mit dem Problem beschäftigen und eine aktuellere, befriedigendere Lösung schreiben, die ich dann sowohl einzeln (unter der MPL, wie alle meine OpenSource-Projekte) als auch als Teil der JCL (das hatte ich mir schon vorgenommen, sollte ich eine neue Lösung schreiben) veröffentlichen werde, sofern dies gewünscht wird. Wie gesagt, falls es dazu kommt, werde ich mich noch mit euch (JEDI) in Verbindung setzen.

Grüße und Danke einstweilen,
Max

CazperFuture 21. Mai 2009 19:05

Re: Task Scheduling Vista / XP
 
hey
Lade dir doch einfach einen Taskplaner runter, gibt genug im I-net. Ich habs auch gemacht, denn der Taskplaner von Windows funkitonierte nicht. Genauer gesagt konnt ich den gar nicht starten, den Grund dafür weis ich leidern icht. Na egal.

ich empfehle ppSchedule

:warn:

Prototypjack 22. Mai 2009 19:51

Re: Task Scheduling Vista / XP
 
Zitat:

Zitat von CazperFuture
hey
Lade dir doch einfach einen Taskplaner runter, gibt genug im I-net. Ich habs auch gemacht, denn der Taskplaner von Windows funkitonierte nicht. Genauer gesagt konnt ich den gar nicht starten, den Grund dafür weis ich leidern icht. Na egal.

ich empfehle ppSchedule

:warn:

Danke für den Tipp, aber die Aufgabenplanung funktioniert bei mir (Windows Vista Home Premium, SP1) sehr gut. Das Problem ist das Ansprechen aus dem eigenen Programm heraus.

Wie ich jetzt feststellen konnte funktioniert das Ansprechen mittels Schtasks.exe zwar, ist mir aber zu grob implementiert, wohl aufgrund der Tatsache, dass dieses Programm eher für Batch-Dateien bzw. multiples ansprechen durch Administratoren größerer Netzwerke gedacht ist.
Für das Ansprechen aus meinem eigenen Programm ist mir das zu wenig, was wohl darauf hinausläuft, dass ich tatsächlich das COM-Interface ansprechen muss (was ja auch, im Gegensatz zu Schtasks.exe, genau dafür Gedacht ist). Ich werde mich deshalb wahrscheinlich in Zukunft (sobald ich hier etwas mehr Zeit habe) des öfteren bei euch (vor allem bei Dezipaitor) melden bezüglich dieser Sache, ihr könnte also auf ein paar COM-Threads gespannt sein ;).

Vorerst muss ich aber, wie gesagt, erst ein paar andere wichtige Dinge erledigen und mich dann erst einmal in die COM-Materie einlesen, bis dahin dürften noch ein paar Wochen vergehen.

Grüße,
Max


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz