V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
bobopu
V2EX  ›  编程

有没有什么办法让批处理以管理员权限运行?

  •  
  •   bobopu · May 2, 2014 · 13959 views
    This topic created in 4378 days ago, the information mentioned may be changed or developed.
    前提是win8,不使用快捷方式,让批处理以管理员权限运行。
    5 replies    2014-05-02 18:48:15 +08:00
    Just1n
        1
    Just1n  
       May 2, 2014
    是随时还是?
    我前段时间有一个每次开机都要管理员权限运行一个批处理文件的需求,用的是windows计划任务。
    bobopu
        2
    bobopu  
    OP
       May 2, 2014
    @Just1n 是永久。
    scusjs
        3
    scusjs  
       May 2, 2014
    @echo off

    %1 %2
    ver|find "5.">nul&&goto :st
    mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :st","","runas",1)(window.close)&goto :eof
    :st
    copy "%~0" "%windir%\system32\"

    这是以前不知道哪里复制的,把自己的命令加在后面就可以了
    vibbow
        4
    vibbow  
       May 2, 2014
    @echo off

    :: BatchGotAdmin
    :-------------------------------------
    REM --> Check for permissions
    >nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

    REM --> If error flag set, we do not have admin.
    if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
    ) else ( goto gotAdmin )

    :UACPrompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs"
    exit /B

    :gotAdmin
    if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
    pushd "%CD%"
    CD /D "%~dp0"
    :--------------------------------------

    <YOUR BATCH SCRIPT HERE>
    bobopu
        5
    bobopu  
    OP
       May 2, 2014 via Android
    @scusjs
    @vibbow 感谢二位,上班后去试一下。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1516 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 16:48 · PVG 00:48 · LAX 09:48 · JFK 12:48
    ♥ Do have faith in what you're doing.