Skip to main content

Batchdateien als Administrator ausführen

Mit dieser Codezeile kann man sicherstellen, das eine Batchdatei mit Adminrechten ausgeführt wird.

net session >nul 2>&1 || (
  ECHO CreateObject^("Shell.Application"^).ShellExecute "%~0", "", "", "runas", 1 >"%temp%\runasadmin.vbs"
  "%temp%\runasadmin.vbs"
  exit /b
)

Funktionsweise

Das Kommando net session darf nur als Administrator ausgeführt werden. Wenn das fehlt schlägt führt das || (ODER) zur ausführung des Abschnittes in Klammern.

Dort wird im Tempverzeichnis eine VBS Datei angelegt, die dann das erzeugende Script mit Adminrechten erneut startet.