NEWS
Windows 10 in den Ruhezustand
-
Hallo
Habe viel gesucht, leider nichts gefunden das mir weiter helfen könnte
Ich möchte meinen Windows 10 PC in den Ruhezustand schicken über den IoBroker.net rpc ist installiert und es funktioniert auch WOL, Herunterfahren, Neustart nur Ruhezustand eben nicht
Übersehe ich etwas ?net rpc -S 10.0.0.99 -U Benutzer%Passwort shutdown -f -h
es kommt die Meldung:
net rpc shutdown
Shut down a remote RPC serverAber am PC Verändert sich nicht
Könnt ihr mir da weiter helfen ??
Vielen Dank
-
Schau dir bitte das Programm psshutdown von Microsoft an: https://docs.microsoft.com/en-us/sysinternals/downloads/psshutdown
Es halt Schalter für Standby und Hibernate. Ob das Remote auch geht, musst Du testen.
-
Hallo
hatte erst heute so richtig zeit mich damit zu beschäftigen.
nachdem es eine exe ist ist es vermutlich nur für Windows zu Windows
ich benötige aber von meinem PI zu Windowshab im Internet viel gesucht aber iwie hat das keiner zum laufen gebracht.....
ich habe die Befürchtung das ich mir da eine andere Lösung einfallen lassen mussDanke trotzdem
-
Hallo zusammen,
ich hole das Thema nochmal hervor.
Gibt es hier schon Möglichkeiten Windows 10 in den Ruhemodus zu versetzen (bei Abwesenheit) und Aufzuwecken (bei Anwesenheit)VG
-
@blue231181
Du willst nicht den Rechner, auf dem ioBroker läuft, in den Ruhezustand versetzen, sondern einen anderen, richtig?
Die "net rpc" Variante, die weiter oben beschrieben ist, hab ich bei mir auch nicht zum Laufen bekommen.
Was bei mir klappt ist ein Aufruf vonrundll32.exe powrprof.dll,SetSuspendState Hibernate
Das muss aber natürlich auf dem Rechner ausgeführt werden, der in den Ruhezustand versetzt werden soll. Da ich nur dafür keinen ioBroker auf der Kiste installieren wollte, hab ich mir persönlich einen kleinen Server gebastelt, der auf entsprechende Aufforderung diesen Befehl ausführt. z.B. In Python geht das recht einfach:
import sys import socket import threading import time import os bind_ip = '0.0.0.0' bind_port = 4242 print('Listening on {0}:{1}'.format(bind_ip, bind_port)) sys.stdout.flush() running = True def handle_client_connection(client_socket): global running request = client_socket.recv(1024) print('Server Received {0}'.format(request)) if request == b"quit": client_socket.send(b'Quit') running = False elif request == b"hypernate": client_socket.send(b'Hybernate') os.system(r'rundll32.exe powrprof.dll,SetSuspendState Hibernate') else: client_socket.send(b'Unknown') client_socket.close() while running: try: server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server.bind((bind_ip, bind_port)) server.listen(5) # max backlog of connections while running: client_sock, address = server.accept() client_handler = threading.Thread( target=handle_client_connection, args=(client_sock,) ) client_handler.start() except Exception as e: print("Exception occurred:",e) time.sleep(60)
Das Python Programm muss nach dem Starten des Windows PCs gestartet werden. Schickt man dann an Port 4242 den String hybernate geht er in den Ruhezustand.
Fürs Aufwecken würde ich WOL (Wake on LAN) verwenden, guck dir mal den Adapter Net Tools dafür an.
-
@blue231181 habe eben mal wieder den Adapter "windows-control" installiert.
Getestet und als funktionierend resultiert.
Der Adapter installieren und auf dem WindowsClient das zugehörige Tool (steht in der Adapterbeschreibung) installieren.
Dann dementsprechend konfigurieren und der "Ruhemodus" steht zur Verfügung.
Um den Rechner dann wieder zu wecken muss der Adapter "net-tools" (wie von @Gaspode ) erwähnt installiert sein.
Dort kann man dann mit dem DP "wol" den CLient wieder aufwecken.Hier mal der GitLink dazu (da wird es erklärt):
-