playva
Goto Top

Batch-Datei läuft unter XP, unter Vista nicht?

Hallo alle zusammen, heute ist der Tag, an dem ich nicht meine Antwort hier im Forum gefunden habe face-smile
Ich hoffe mir kann jemand weiter helfen.

Hallo alle zusammen,

habe einen PC der als FileServer fungiert (Win Vista Business SP.1).
Er sollte abends per Aufgabenplaner eine Batchdazei ausführen (C:\RemoteControll\shutdown_eplan-01.bat).
Dieses Batch-Script habe ich unter WinXP Prof. SP.3 zusammen gebastelt. Da ich nur an diesem Rechner Internet zugriff habe.
Unter XP läufts aber unter Vista nicht. Habe schon paar sachen ausprobiert, bekomme es aber nicht zum laufen.

Script Beschreibung:
Dieses Script läuft auf dem Vista FileServer und pingt zwei Clients an.
Ist einer der beiden Clients oder beide Clients eingeschalten fährt der Vista FileServer nicht herunter und
ruft dieses Script jede Stunde auf bis morgens um 5.00 Uhr.
Falls beide Clients ausgeschalten sind, fährt der Vista FileServer herunter.
Gestartet wird er autom. morgens um 6.00 Uhr von einem Domänen Controller per WOL das aber funktioniert.
Desweiteren kann der FileServer von beiden Clients die sich in einem anderen Büro befinden gestartet werden per WOL.
Damit Schichtarbeiter auch nachts zugriff auf die Daten haben. Runterfahren tut er dann ja wieder mit dem Script, dass jede Stunde nachts testet ob er runter fahren kann.


Script shutdown_eplan-01.bat:

@echo off

rem +--------------------------------------------------------------------------------------------------------------------------------------+
rem | Diese Batchdatei pingt die beiden Eplan-02 und Eplan-03 computer an. |
rem | Wenn beide oder einer der beiden antwortet (sprich eingeschalten ist) fährt der Server nicht runter. |
rem | Antworten beide nicht, fährt der Server runter. |
rem | 2010(c)DC |
rem *--------------------------------------------------------------------------------------------------------------------------------------+

rem ---Meldung an Benutzer---
echo
echo * *
echo * Eplan-PC1 ausschalt Kontrolle. *
echo * *
echo


rem ---Variablen deklaration---
set ipEplan02=172.16.0.5
set ipEplan03=172.16.0.25
set on=nein

rem ---Ping aufrufen---
rem ---Ping Eplan-02
ping %ipEplan02% -n 1 -l 10 >nul
if %errorlevel% equ 0 set on=ja
rem ---Ping Eplan-03
ping %ipEplan03% -n 1 -l 10 >nul
if %errorlevel% equ 0 set on=ja

rem ---Auswertung der on-Variable---
if %on% equ nein (goto herunterfahren) else goto nichtHerunterfahren

rem ---Server nicht runterfahren---
:nichtHerunterfahren
goto exit

rem ---Server herunterfahren---
:herunterfahren

%SystemRoot%\system32\shutdown.exe /s /t 600 /c "Herunterfahren abbrechen: Im Dos-Fenster [J] und anschliessend [Enter] "
echo.
echo.
echo Der Computer wird heruntergefahren!
echo.
set /p abbruch=Abbruch: [J] und anschliessend [Enter] druecken:
if %abbruch%==u %SystemRoot%\system32\shutdown.exe -a
if %abbruch%==h %SystemRoot%\system32\shutdown.exe -a
if %abbruch%==j %SystemRoot%\system32\shutdown.exe -a
if %abbruch%==k %SystemRoot%\system32\shutdown.exe -a
if %abbruch%==n %SystemRoot%\system32\shutdown.exe -a
if %abbruch%==m %SystemRoot%\system32\shutdown.exe -a

goto exit

:exit


Vielleicht kann mir ja jemand helfen.
Mit Dank im vorraus face-smile

LG Playva

Content-Key: 133519

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

Printed on: April 25, 2024 at 20:04 o'clock

Member: SlainteMhath
SlainteMhath Jan 15, 2010 at 07:41:11 (UTC)
Goto Top
Moin,

Habe schon paar sachen ausprobiert, bekomme es aber nicht zum laufen.
was genau bedeutet das denn?
Gibt's ne Fehlermeldung? Läuft die Batch, wenn Du sie per Doppelklick ausführst?

und interessehalber:
if %abbruch%==u %SystemRoot%\system32\shutdown.exe -a
if %abbruch%==h %SystemRoot%\system32\shutdown.exe -a
if %abbruch%==j %SystemRoot%\system32\shutdown.exe -a
if %abbruch%==k %SystemRoot%\system32\shutdown.exe -a 
if %abbruch%==n %SystemRoot%\system32\shutdown.exe -a
if %abbruch%==m %SystemRoot%\system32\shutdown.exe -a
Ist das die Abfrage, ob der User "ungefähr" das "J" trifft? face-smile

lg,
Slainte
Member: datasearch
datasearch Jan 15, 2010 at 08:06:14 (UTC)
Goto Top
Hier hatte ein anderer User ebenfalls ein Problem mit shutdown unter Vista. Dort lag es aber scheinbar an falschen Parametern für das Zeitlimit. Wenn ich den Befehl ausführe funktioniert es einfach nur.
Autom. Herunterfahren als Batch-Datei nach Umstieg auf Vista ohne Funktion

LOL Die Abfragen der Tasten um "J" ist auch nicht schlecht face-wink

Probiere nochmal den Codeblock zum Herunterfahren aus einer seperaten BAT direkt von der Konsole auszuführen. Vermutlich hast du dies aber bereits.
Member: bastla
bastla Jan 15, 2010 at 11:39:10 (UTC)
Goto Top
LOL Die Abfragen der Tasten um "J" ist auch nicht schlecht face-wink
... wobei mir noch ein "i" fehlen würde - nämlich:
if /i %abbruch%==u %SystemRoot%\system32\shutdown.exe -a
- dann klappt's auch bei gedrücktem Caps-Lock ... face-wink

Grüße
bastla
Member: chainsaw
chainsaw Jan 15, 2010 at 13:17:01 (UTC)
Goto Top
Sorry,

ich kann zwar leider nicht zur Lösung des Problems beitragen, aber

> Ist das die Abfrage, ob der User "ungefähr" das "J" trifft?

der war sensationell! face-smile Ein richtig guter Lacher vor dem WE
Gruß chainsaw
Member: Playva
Playva Jan 19, 2010 at 12:35:39 (UTC)
Goto Top
Hallo alle zusammen,

danke erstmal für die Antworten.
Ich find meine "j" Abfrage sensationel *g*
Stimmt das "i" fehlt ;)
Unter Vista läuft das Programm ohne Fehlermeldung.
Problem ist das Errorlevel. Die Rückgabewerte sind anderst wie bei XP.

Habe mein Problem anderst gelöst. Lass das Script jetzt auf einem Server2003 laufen.
Und habe folgendes geändert:

:herunterfahren.
Die "j" Abfrage fliegt weg =)
Sende Shutdown... + /C Kommentar bla bla bla
Nun bekommt der Benutzer der an dem betroffenen Rechner sitzt eine Meldung, dass der PC in 10min. runter fährt.
Kann aber diesen Prozess abbrechen in dem er eine Datei "Ausschalten_abbrechen" auf dem Desktop ausführt.

Gesamtumfang des ganzen.
Server2003 schaltet von Mo - Fr den FileServer um 6.00 Uhr ein.
Server2003 schaltet von Mo - So den FileServer um 19.00 Uhr aus, aber nur wenn keine anderen Clients mehr eingeschalten sind.
Falls ein oder mehrere Clients noch eingeschaltet sind wird der Vorgang alle Stunde wiederhollt bis morgens um 5 Uhr.
Die Clients werden um 18.30 Uhr vom Server2003 ausgeschaltet und bekommen eine Meldung das der PC in 10min. runter fährt.
Zum abbrechen Datei auf dem Desktop ausführen. Das wiederhollt sich ebenfalls jede Stunde.
Ein Client befindet sich in einem anderen Gebäude und kann nachts den Server hochfahren. Arbeiten und anschließend dann alles stehn und liegen lassen... Und das ganze fährt dan von alleine runter.

So sollte mal wieder was tun ;)

MfG Playva