檢查批次檔是否以系統管理者身份執行

底下是幾種方式是從網路上搜尋得來的

參考:Windows Batch 不直觀集 @ Vexed’s Blog :: 隨意窩 Xuite日誌
@echo off
MKDIR “%windir%System32test” >> null

IF “%errorlevel%” == “0” (
    RMDIR “%windir%System32test”
    ECHO 現在可以胡作非為了!
    ECHO.
    pause
) ELSE (
    ECHO 請以系統管理者身份執行!
    ECHO.
    pause
)

del /f /q %cd%null

一般身份執行

系統管理者身份執行

[@more@]另外一種方式,從網路上搜尋得來的
@echo off
REG QUERY “HKUS-1-5-19” >NUL 2>&1 && (
    Goto OK
) || (
    ECHO.
    ECHO 請以系統管理者身份執行!
    ECHO.
    pause
    Exit
)

:OK
ECHO 現在可以胡作非為了!
pause
Exit

另外一種方式,取自:更新修正包 | WanMP Online System
@echo off
REM  –> Check for permissions
IF ‘%PROCESSOR_ARCHITECTURE%’ EQU ‘amd64’ (
   >nul 2>&1 “%SYSTEMROOT%SysWOW64icacls.exe” “%SYSTEMROOT%SysWOW64config”
 ) ELSE (
   >nul 2>&1 “%SYSTEMROOT%system32icacls.exe” “%SYSTEMROOT%system32config”
)

REM –> If error flag set, we do not have admin.
if ‘%errorlevel%’ NEQ ‘0’ (
    ECHO 請以系統管理者身份執行!
    ECHO.
    pause
) else (
    ECHO 現在可以胡作非為了!
    ECHO.
    pause
)