2017-11-23 36 views
-1

これはrun.batファイルを実行していないこのコードを持つバッチファイルです。 与えるエラー: は、内部または外部コマンドバッチファイルからRunasコマンドを使用してバッチファイルを実行する方法

@echo off 
SET Identity=%userdomain%\%username% 
CALL :ICACLS "%Identity%" 
SET mypath=%~dp0 
echo %mypath:~0,-1% 
runas /noprofile /user:%Identity% "cmd /K %mypath%\run.bat" 
+0

それは、働く元のスクリプトと同じディレクトリにあるrun.batであると認識されていませんか? –

+0

また、mypathを現在のディレクトリに設定します。なぜですか?あなたは '。\ run.bat'を呼び出すことができ、両方が同じディレクトリにあるとみなします。 –

+0

はい同じディレクトリにあります。 – rahul

答えて

1
Echo Soft 
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 code goes here which needs to be run with admin rights:: 
+0

これは私が探していたものです... – rahul

関連する問題