Task planen
-
Hallo,
ich möchte einen Task im Taskmanager planen. Am besten in C++. Nur leider hab ich das noch nicht hinbekommen
Ich habe es schon probiert mit dem eingebeaufforderungs Befehl "AT" aber der bietet mir zuwenig Möglichkeiten
So möchte ich z.B. dass der PC aus dem Ruhezustandsmodus erwacht bzw. der Prozess nur ausgeführt wird, wenn der Benutzer gerade aktiv ist. Das geht (meiner Ansicht nach) mit dem AT Befehl leider nicht
Gibt es noch andere, vllt. "reinrassige" C++ Befehle/Möglichkeiten?mfg
Yoda2003
-
Dieser Thread wurde von Moderator/in evilissimo aus dem Forum C++ in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Yoda2003 schrieb:
Gibt es noch andere, vllt. "reinrassige" C++ Befehle/Möglichkeiten?
Unter Garantie nicht. Und warum C++ keine Funktion dafür kennt, darfst du selber rausfinden.
Du kannst aber mit C++ eine API Funktion aufrufen, die das kann. Welche das ist kannst du im PSDK oder onlin eim MSDN nachschlagen.
-
-
Jochen Kalmbach schrieb:
im Prinzip ist es genau das was ich gesucht habe

Vielen Dank für die Antwort. Jetzt hab ich (wahrscheinlich eine sehr lächerliche Anfängerfrage) wie kompiliere ich das nun? Eine Konsolenanwendung scheint das ja nicht zu sein Aber mit MFC bekomm ich das auch net hin
-
Du musst nur CTask.h und CTask.cpp in Dein Projekt aufnehmen und dann die Klasse verwenden... Ob es Console oder Windows ist spielt dabei keine Rolle..
Was ist denn konkret Dein Problem (Fehlermelung?)
-
im Moment habe ich einen ganz komischen Fehler.
Und zwar scheitert es an der include Datei stdafx.h.Der Compiler (habs mit Microsoft Visual Studio 6 und 2005 probiert) meldet:
fatal error C1189: #error : include 'stdafx.h' before including this file for PCHweiß da erst mal auch leider nicht weiter

EDIT
Hab es jetzt doch hinbekommen. Aber ich glaube das beantwortet meine oben gestellte Frage leider nicht

Ich kann immer noch nicht dem Task sagen, dass z.B. der PC aus dem Ruhezustand reaktiviert werden soll oder der Task nur ausgeführt werden soll, wenn der Benutzer angemeldet ist, oder habe ich bloß was übersehen?
-
Siehe "IScheduledWorkItem::SetFlags" mit TASK_FLAG_RUN_ONLY_IF_LOGGED_ON und TASK_FLAG_SYSTEM_REQUIRED
Entweder verwendest Du direkt diese Klasse oder ergänzt die CTask-Klasse, damit auch das deFlags korrekt durchgeschleusst wird...
-
Ich habe es leider immer noch nicht hinbekommen

Im moment besteht das Problem darin, was der Parameter CTime in der afx.h datei macht bzw. in der Programmzeile:
BOOL GetStartDateTime ( CTime& ) const; // pobierz date i godzine startu(das beste wäre natürlich, wenn irgendwer hier mir einen passenden quellcode liefern könnte, der 1 programm zu einen bestimmten zeitpunkt mit hilfe des taskplaners unter windows starten könnte)
mfg
yoda2003