thecollecter
Goto Top

Batch datei für shutdown von 3x win8.1 basic Rechnern ohne direkten Steuerbefehl!!??

Hallo Computerfreunde und Problemlöser!!

Ich wende mich an euch aus folgendem Problem heraus:
Ich habe in den letzten 12 Monaten 3 Rechner gebaut mit jeweils win8.1 Vollversion drauf.
Leider musste ich im nachhinein feststellen das es eben keine Vollversion im eigentlichen Sinne ist sondern eine basic.
So lange der Steuerrechner ein Win7 Prof. war konnte ich wunderbar mit TeamViewer meine Rechner im Heimnetz wecken und Fernbedienen.
Es war für meine Zwecke die perfekte Lösung.
Jetzt wurde vor kurzem der steuernde Rechner auch erneuert und wurde ebenfalls zu einem win8.1 Rechner.
Somit konnte die wakeup Funktion über Teamviewer nicht mehr benutzt werden, warum weis ich nicht!?
Also habe ich mir mit WOL2 geholfen, super Tool übrigends, welche mir diese Möglichkeiten wieder bot.

Leider leider musste ich aber auch hier feststellen, das nur das aufwecken und weder das Neustarten noch der shutdown funktionieren.
Alle angehauen die sich mit der Materie beschäftigen, viele Versuche aus dem Netz probiert es schlug alles fehl.
Als letzte Lösung wollte ich mir 3 Upgrades auf win8.1 pro kaufen. Was leider nicht ohne weiteres möglich ist, da sehr sehr viele Volumenlizensen im Umlauf sind welche dann plötzlich auslaufen und die Updates stoppen bzw. die Registrierung schon fehl schlägt.
Die Bewertungen in der Bucht schreien geradezu dannach.
Also habe ich bei Microsoft angerufen, da mich der Upgrade Link in win8.1 mich auf die Seite von denen umleitet auf der es nur noch win10 gibt.
Die haben mir dann erklärt das es ihnen leid tut aber es gibt nichts mehr außer win10. Dazu mussten die aber erst zweimal nen Kollegen fragen........aber gut.

Ich bin jetzt ein bischen angefressen, da ich meine Rechner gerne vollständig Fernsteuern möchte.
Das ist auh schon die Aufgabenstellung bei meinem Beitrag hier im Forum.
Ich möchte auf meinem Hauptrechner, wir nennen ihn mal PC1, für 3 Rechner im Netzwerk NW, jeweils einen Wakeup Button und einen Shutdown Button haben.
Da die direkten Befehlssätze die den Computernamen oder die IP ansprechen von win 8.1 basic geblockt werden, habe ich mir folgendes überlegt und erbitte dabei eure Hilfe!

Bitte korrigiert mich wenn was falsch ist, Danke!
Netzwerkshutdown ohne ein Betriebssystem das dieses Unterstützt über Batch Dateien!!

Nahdem meine Versuche eine datei im Laufwerkspfad eines Netzwerk rechners zu starten fehl schlugen, da diese(wie ich jetzt weis) auf dem ausführenden Rechner starten und nicht auf dem wo sie liegen, kam mir folgendes in den Sinn.

Ich möchte auf jedem zu steuernden Rechner PC 2-4 eine Batchdatei anlegen, welche ab Systemstart läuft ohne Anmeldung eines Benutzers.

Für diese Zwecke habe ich mich versucht durch das kompendium von Wiki zu lesen was Batch Programmierungen angeht und bin leider an der win8.1 Problematik und meiner nicht vorhandenen Fachkenntnis zu Batch Dateien gescheitert!

Diese Batchdateien soll folgendes machen:

1. Kontrolliere ob die Datei "shutdown" im verzeich nis x existiert!?
2. wenn ja warte 60 sekunden und springe zurück zum Anfang!
3. wenn nein, schließe offene Anwendungen
4. erzeuge Datei shutdown in Pfad x wieder
5. und führe Shutdown aus!!
Das ganze ohne offenes CMD!

Auf dem PC1 gibt es nun, man kann es erraten, für PC 2-4 jeweils eine Batcdatei auf dem Desktop die folgendes beinhaltet.

1. Anzeige des cmd
2. Text "Rechner 2 oder 3 oder 4 herunter fahren wird eingeleitet!"
3.löschen der Datei shutdown im verzeichnispfad des entsprechenden rechners
4. optional ein schließen des Fensters nachdem der Rechner aus ist,

Das wäre mein Plan bisher, wie ich vorgehen möchte.
Habe bisher, wie schon geschrieben, keine Erfahrung mit Batch Dateien und habe leider auch keine Befehlssätze für win8.1 im Netz finden können.
Was ich bisher probiert habe ist folgendes:

Bitte nicht lachen....

@echo title System Shutdown von PC 1, ausgelöst!!
color 4f
cmd
echo
@echo %date%
@echo %time%
pause
echo
echo
@echo off
@echo Zeitfenster wurde gestartet!!
echo
echo
pause
del %homepath%\desktop\test
echo %errorlevel%
eof
pause
exit

Das war ein eher kläglicher Versuch!

Dann habe ich so lange gesucht und probiert bis das dabei raus kam, allerdings ist die Löschung auf dem gleichen Rechner wie die Batch Datei ausgeführt wird!

@echo System Shutdown von PC 1!!
color 4f
@echo %date%
@echo %time%
:fehlschlag
@echo SHUTDOWN ausloesen bitte starten!!
pause
color cf
timeout 2
if exist c:\users\peter\desktop\test\1.txt del /q/s c:\users\peter\desktop\test\*.*
if exist c:\users\peter\desktop\test\1.txt goto fehlschlag
color 2f
@echo Der angesteuerte PC fährt in den nächsten 60 Sekunden herunter!!
@echo Dieses Fenster schließt sich in den nächsten 5 Sekunden!!
timeout 10
exit

Das klappt wunderbar.....

Jetzt dachte ich mir, brauche ich nur noch den Pfad für den Rechner im Netzwerk ein zu geben....

@echo System Shutdown von PC 1!!
color 4f
@echo %date%
@echo %time%
:fehlschlag
@echo SHUTDOWN ausloesen bitte starten!!
pause
color 5f
timeout 4
if exist \\Datenspeicher1\c\1 Steuerdatei für SHUTDOWN\1.txt del /q/s \\Datenspeicher1\c\1 Steuerdatei für SHUTDOWN\1.txt*.*
if exist \\Datenspeicher1\c\1 Steuerdatei für SHUTDOWN\1.txt goto fehlschlag
color 2f
@echo Der angesteuerte PC fährt in den naechsten 60 Sekunden herunter!!
@echo Dieses Fenster schließt sich in den nächsten 5 Sekunden!!
timeout 5
exit

Tja und jetzt klappt es eben nicht mehr.....

Auch klappt der von mir eingeplante Sprungbefehl nicht. Da ja das erste Eingabefenster wieder erscheinen müsste!?
Selbst das cmd Fenster geht einfach zu obwohl ich zum ausprobieren bereits die beiden letzten Zeilen entfernt habe!
Auch wegen der Rechte habe ich die Batch Datei mit einer Verknüpfung versehen und diese mit Administrator Rechten startend gemacht!
Auch nix....

Also hab ich weiter gesucht und jetzt einige Infos gelesen bezüglich der Benutzerkontensteuerung welche da rum zickt. Anscheinend geht diese bei Zugriffen über cmd nicht von Admin Rechten aus. Die muss man erst im vorraus übertragen befor die Befehlzeilen kommen. Aber bei den Erklärungen die ich gefunden habe wird immer von Laufwerksbuchstaben gesprochen, was ich nicht verstehe.
Wenn ich den Pfad angebe muss ich doch den Weg über die Netzwerk Umgebung gehen oder nicht??
Wiso sprechen die dann immer zu erst von einem Laufwerksbuchstaben und dann erst vom Computernamen??

Ich bin jetzt etwas durch den Wind, nach 8 Stunden und brauche bitte bitte Hilfe!!

kann mir da jemand weiter helfen der sich mit Windows 8.1 und Batch Dateien auskennt, denn fast alle Bibliotheken und Befehlslisten sind bis win7 die ich gefunden habe!!

Grüße
Peter

Content-Key: 309481

Url: https://administrator.de/contentid/309481

Printed on: April 19, 2024 at 16:04 o'clock

Member: Ben.Blake.79
Ben.Blake.79 Jul 10, 2016 updated at 19:45:57 (UTC)
Goto Top
setzt den Code mal in ein bitte
Hast Du versucht, die Pfade über Netzwerklaufwerke oder mit subst zu ersetzen? Geht beides auch von der cmd, dort kannst Du die NW-Laufwerke auch wieder trennen. Bei subst weiß ich jetzt nicht mehr, ob das mit NEtzwerkpfaden ging, kann das jetzt auch nicht probieren...

und was mir gerade auffällt, Du solltest wegen der Leerzeichen die Pfade mal in "" setzen...

und starte das mal aus der cmd heraus, die wird dann bei Fehlern nicht geschlossen und bau vor dem Exit mal pause ein, Exit schließt die cmd...
Member: TheCollecter
TheCollecter Jul 10, 2016 at 20:40:31 (UTC)
Goto Top
Hallo grüß dich!!

Kannst du das bitte ohne Kürzel erklären bitte!!??

Was meinst du mit "setzt den Code mal in ein bitte"
Das sagt mir leider nix.

Ist die Art der Pfad Angabe den so richtig wie ich es gemacht habe??
Habs direkt aus dem Explorer kopiert!!

Was meinst du mit "subst" ?

Ich habe darin keine Übung, hab heute um 11Uhr damit angefangen und hänge seit dem dran!!
Das mit den "" probier ich mal aus!

Grüße
Member: TheCollecter
TheCollecter Jul 10, 2016 at 21:01:39 (UTC)
Goto Top
Hab das mit den " ausprobiert.
die Datei läuft jetzt durch ohne Fehlermeldung aber sonst passiert nix!!

Kein Löschvorgang durchgeführt!
Mitglied: 129813
129813 Jul 10, 2016 at 22:09:49 (UTC)
Goto Top
Hi,
you only need to enable LocalAccountTokenFilterPolicy and a restart of the target machines
https://www.windowspro.de/tipp/uac-filter-fuer-windows-fernwartung-absch ...

Regards
Member: TheCollecter
TheCollecter Jul 11, 2016 at 17:05:27 (UTC)
Goto Top
Hi vielen Dank für die Info.

Das habe ich bereits eingerichtet seit den Versuchen mit direktem Remote Befehlen.
Welche dann scheiterten!!

Grüße Peter
Member: TheCollecter
TheCollecter Jul 20, 2016 at 16:45:35 (UTC)
Goto Top
Die fertige Lösung!!

An dieser Stelle noch einmal herzlichen Dank an meinen Kollegen Christian, is Super !!

Also, auf den Zielrechnern läuft das hier:

set pfad="c:\1 Steuerdatei SHUTDOWN\1.txt"

:loop
timeout 5
if exist %pfad% (goto loop)

echo "Shutdown now!"
shutdown.exe /s /t 5
echo "%date% %time% exitcode: %errorlevel%" > %pfad%
exit


Die leere Textdatei wird kontrolliert ob sie da ist. Ist sie verschwunden, wird eine neue Textdatei erzeugt und ein Shutdown ausgelöst!!


Auf dem Steuerrechner läuft folgendes:

else @echo System Shutdown von PC 1!!
color 4f
@echo %date%
@echo %time%
:fehlschlag
@echo SHUTDOWN bitte starten!!
pause
color 5f
timeout 4
if exist "\\Datenspeicher1\c\1 Steuerdatei SHUTDOWN\1.txt" (del /q/s "\\Datenspeicher1\c\1 Steuerdatei SHUTDOWN\*.*") else goto fehlschlag
color 2f
@echo Der angesteuerte PC fährt in den naechsten 60 Sekunden herunter!!
@echo Dieses Fenster schließt sich in den naechsten 5 Sekunden!!
timeout 10
eof


Aufforderung zum Tastendruck zum auslösen des Shutdown. Steuerdatei auf dem Netzwerkrechner wird gesucht und gelöscht. Somit greift die oben genannte Batch Datei auf dem Zielrechner!
Anzeige über den Löschvorgang i.O CMD wird grün, CMD geht aus.
Sollte die Datei bereits weg sein (warum auch immer) startet das ganze von vorne!!

Ich bescheibe das hier in einfachen Worten, da es bestimmt noch andere Menschen gibt, die wie ich diese Programmiersprachen nicht beherschen!!

Grüße
Mitglied: 129813
129813 Jul 20, 2016 updated at 18:47:03 (UTC)
Goto Top
Why simple when it can be complicated face-big-smile ! Seams you still have to learn a lot of things face-wink.
Simple tweak of the firewall, above UAC Filter, everything no problem. Also testet with a simple Windows 8.1 Basic Edition as VM, works as designed!

Regards