JAVA “Run as administrator” “UAC disabled” alternative solution

來源:互聯網
上載者:User

標籤:

Technorati 標籤: psexec,run as administrator,UAC

java.io.IOException: Cannot run program "psexec.exe": CreateProcess error=740, The requested operation requires elevation
    at java.lang.ProcessBuilder.start(Unknown Source)
    at java.lang.Runtime.exec(Unknown Source)
    at java.lang.Runtime.exec(Unknown Source)
    at java.lang.Runtime.exec(Unknown Source)
    at com.gdn.BuildHostNow.main(BuildHostNow.java:14)
Caused by: java.io.IOException: CreateProcess error=740, The requested operation requires elevation

old script :

http://stackoverflow.com/questions/1894967/how-to-request-administrator-access-inside-a-batch-file

update script:

 http://stackoverflow.com/questions/7044985/how-can-i-auto-elevate-my-batch-file-so-that-it-requests-from-uac-administrator/28467343#28467343

 

@ECHO OFFsetlocal EnableDelayedExpansionNET FILE 1>NUL 2>NULif ‘%errorlevel%‘ == ‘0‘ ( goto START ) else ( goto getPrivileges ) :getPrivilegesif ‘%1‘==‘ELEV‘ ( goto START )set "batchPath=%~f0"set "batchArgs=ELEV"::Add quotes to the batch path, if neededset "script=%0"set script=%script:"=%IF ‘%0‘==‘!script!‘ ( GOTO PathQuotesDone )    set "batchPath=""%batchPath%""":PathQuotesDone::Add quotes to the arguments, if needed.:ArgLoopIF ‘%1‘==‘‘ ( GOTO EndArgLoop ) else ( GOTO AddArg )    :AddArg    set "arg=%1"    set arg=%arg:"=%    IF ‘%1‘==‘!arg!‘ ( GOTO NoQuotes )        set "batchArgs=%batchArgs% "%1""        GOTO QuotesDone        :NoQuotes        set "batchArgs=%batchArgs% %1"    :QuotesDone    shift    GOTO ArgLoop:EndArgLoop::Create and run the vb script to elevate the batch fileECHO Set UAC = CreateObject^("Shell.Application"^) > "%temp%\OEgetPrivileges.vbs"ECHO UAC.ShellExecute "cmd", "/c ""!batchPath! !batchArgs!""", "", "runas", 1 >> "%temp%\OEgetPrivileges.vbs""%temp%\OEgetPrivileges.vbs" exit /B:START::Remove the elevation tag and set the correct working directoryIF ‘%1‘==‘ELEV‘ ( shift /1 )cd /d %~dp0::Do your adminy thing here...psexec.exe -s cmd.exe /c dir >d:\output2.log 2>error2.log

 

@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"    set params = %*:"=""    echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"    "%temp%\getadmin.vbs"    del "%temp%\getadmin.vbs"    exit /B:gotAdmin    pushd "%CD%"    CD /D "%~dp0":--------------------------------------put your command belowpsexec.exe -s cmd.exe /c dir >d:\output.log 2>error.log

JAVA “Run as administrator” “UAC disabled” alternative solution

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.