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-ID: 63628

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

Ausgedruckt am: 23.11.2024 um 02:11 Uhr

bastla
bastla 12.07.2007 um 10:02:45 Uhr
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
KriZ99
KriZ99 12.07.2007 um 10:14:50 Uhr
Goto Top
Perfekt... besten Dank!

Gruß,
Christian