84075
Goto Top

Problem mit Batch ifmember und con2prt

Hallo,

auf meinem Rechner gibt es im Startup ein batch das beim Start bestimmte Drucker verbinden soll wenn der User in der Gruppe Administrators drinne ist. Geht aber nicht. Was habe ich falsch gemacht? Die Tools ifmember und con2prt sind im Verzeichnis "test"

@echo off
%systemroot%\test\ifmember.exe Administrators
if errorlevel 1 goto GR_Admins
goto END
 
rem [ Sprungziel Administrators]
:GR_Admins
rem **  con2prt.exe Optionen: /c = connect; /cd= connect default; /f = lösche vorhandene
%systemroot%\test\con2prt.exe /c "\\druckerserver\drucker1_PCL"  
%systemroot%\test\con2prt.exe /c "\\druckerserver\drucker2_PCL"  
%systemroot%\test\con2prt.exe /c "\\druckerserver\drucker3_PCL"  
%systemroot%\test\con2prt.exe /c "\\druckerserver\drucker4_PCL"  
%systemroot%\test\con2prt.exe /c "\\druckerserver\drucker5_PCL"  
GOTO END

:END

Content-Key: 133470

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

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

Member: Miyamoto
Miyamoto Jan 14, 2010 at 13:48:38 (UTC)
Goto Top
Hi,
ich hatte auch mal so ein ähnliches Problem.
Bei mir lag es an der Variable %temp% da diese noch nicht existiert hat, als das Skript ausgeführt wurde.
Deswegen Tippe ich mal das die Variable %systemroot% auch noch nicht existiert.

um zuschauen ob es daran liegt, kannst du ja mal feste Dateipfade verenden.

Gruß Miyamoto
Mitglied: 84075
84075 Jan 14, 2010 at 13:55:44 (UTC)
Goto Top
also %systemroot% existiert auf jedem Rechner es ist nämlich C:\Windows. Und der darin befindliche Ordner existiert ja auch "test"
Member: Miyamoto
Miyamoto Jan 14, 2010 at 14:03:01 (UTC)
Goto Top
Ja, bei mir hat auch die Variable %temp% existiert und das Verzeichnis sowieso, aber noch nicht zur Zeit wo das Startup Skript lauft, sie wird erst später initialisiert.
Die %systemroot% Variable wird auch glaube ich erst später initialisiert, und nicht schon da wo das Skript läuft.
Mitglied: 84075
84075 Jan 14, 2010 at 14:04:30 (UTC)
Goto Top
sorry aber es war ein ganz dummer fehler, es lag am User Administrator der nicht in der Domäne warface-smile) nun geht es und es funktioniert!
Mitglied: 60730
60730 Jan 14, 2010 at 14:08:37 (UTC)
Goto Top
Servus,

ich schreib das immer wieder und immer mit mehr *ärgs*

@echo off
gehört in Batche/scripte die mindestens 3* ohne Probleme durchgelaufen sind.

Administrators
gibt es nur bei englischen Systemen - oder bei gefrickelten deutschen.

Bei Batchen, die dem Teststatus unterliegen - gehören
pause
Zeilen genauso rein - wie z.B
%systemroot%\test\ifmember.exe Administrators 
if errorlevel 1 goto GR_Admins 
echo %errorlevel%
pause
goto END 


Ps: ein zwei drei Absätze schaden nie und dienen eindeutig der lesbarkeit.
Wo denn dein Bock drin ist - schreibst du ja auch nicht - also schritt für schritt durchexzerieren.

Gruß