kriz99
Goto Top

Benutzerrechte per Batch abfragen

Hallo,

folgende Problemstellung: Ich möchte per Batch den Rechtestatus des aktuell angemeldeten Users abfragen und je nach Gruppe Admin/Benutzer ein Tool starten. Dazu habe ich mir überlegt, eine Datei ins Systemverzeichnis zu kopieren und den Errorlevel auszuwerten - funktioniert aber nicht, es kommt bei Benutzern nur "Zugriff verweigert" zurück und die Batch läuft trotzdem weiter:

@echo off
echo. 2> %windir%\system32\userrights.000
If "%%ERRORLEVEL"=="1" GOTO fehler  
echo Administratorrechte festgestellt
tool.exe
goto :eof

:fehler
echo Benutzerrechte festgestellt

Hat vielleicht jemand eine andere Lösung?
Danke im Voraus,
Christian

PS: Ach ja... das Skript soll unter Win XP/2000 laufen.

Content-Key: 63628

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

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

Member: bastla
bastla Jul 12, 2007 at 08:02:45 (UTC)
Goto Top
Hallo KriZ99 und willkommen im Forum!

Vielleicht so:
@echo off & setlocal
set "user=%username%"  
if /i %computername% neq %userdomain% set "user=%userdomain%\%user%"  
net localgroup administratoren | findstr /i "%user%" >nul || goto :Fehler  
echo Administratorrechte festgestellt
tool.exe
goto :eof

:Fehler
echo Benutzerrechte festgestellt
Für Deinen Code noch einen Hinweis:
If ERRORLEVEL 1 GOTO fehler
würde eher Erfolg haben, oder, wenn tatsächlich der Errorlevel 1 (und nicht >=1) abgefragt werden sollte, wenigstens
If "%ERRORLEVEL%"=="1" GOTO fehler  

Grüße
bastla
Member: KriZ99
KriZ99 Jul 12, 2007 at 08:14:50 (UTC)
Goto Top
Perfekt... besten Dank!

Gruß,
Christian