PC aus Ruhezustand wecken

coder2008

Grünschnabel
Hallo an alle

Ich habe ein großes Problem ! ?
Ich möchte meinen PC (Windows XP) mit einem VB Programm aus dem Ruhezustand wecken.
Es besteht nicht die Möglichkeit für WOL, Bios Wecker, oder dem Taskplaner, da das Programm vollautomatisch laufen soll
und zudem sich die Zeiten des Hochfahrens ändern können.
In den Ruhezustand versetze ich den Rechner mit:
'Application.SetSuspendState(PowerState.Hibernate, False, False)

Aber das Aufwecken will einfach nicht ;(

Ich habe es mit der Seite http://support.microsoft.com/kb/q231298/ versucht aber die Funktion
CreateWaitableTimer() gibt immer den Fehler aus:
"Es wurde versucht, im geschützten Speicher zu lesen oder zu schreiben. Dies ist häufig ein Hinweis darauf, dass anderer Speicher beschädigt ist."

Ich habe aber leider keine Ahnung was ich dagegen tun kann...

Bitte, bitte helft mir

Ich habe es auch schon mit dem Taskplaner versucht, mit folgenden Code:
...
Shell("C:\WINDOWS\system32\cmd.exe /C at " & myStartTime & ":00 /interactive update.exe", AppWinStyle.Hide, True, -1)
Shell("C:\WINDOWS\system32\cmd.exe /C waketask 1 At1", AppWinStyle.Hide, True, -1)
...

Zu Erklärung: Ich rufe damit die Eingabeaufforderung auf und übergebe dem standard Taskplaner "at.exe" meine Variablen (myStartTime)
danach nochmal das selbe nur diesmal mit waketask.exe der in dem soeben erstellten Task die Flag "Rechner zum Ausführen des Task reaktivieren" setzt.

Das ganze klappt auch wunderbar aber leider und das auch zu meiner Verwunderung nicht über Nacht, d.h.
Mein Progi fährt den Rechner um 15:00 Uhr in den Ruhezustand und stellt vorher den Task ein für den nächsten Tag um 7:00 Uhr aber am
nächsten Morgen passiert nichts
ABER wenn ich mein Programm so umstelle das es den Rechner um 15:00 Uhr runterfährt und den Task auf 15:15 einstellt funktioniert es und der Rechner fährt hoch :cursing: 8|

Wer es mal mit der Waketask.exe ausprobieren will: http://www.huebert.info/waketask/
(Und keine Sorge das ist alles Viren frei :) )

Auch für andere Vorschläge bin ich offen

An alle schon mal dank im voraus

Hubertus23 ;)
 
Zu deinem ersten Problem.
Du verwendest wahrscheinlich vb.net.
Das heißt bei der deklation von CreateWaitableTimer darauf achten das der datentyp Long jetzt 64 bit statt 32 hat. Dadurch kommt es zur Fehlermeldung.
Versuche es mit Integer oder Single statt long
 
Zurück