cmd ラインを使用して cmd プロンプトを昇格するにはどうすればよいですか

cmd ラインを使用して cmd プロンプトを昇格するにはどうすればよいですか

私はこのスクリプト「runas /profile /user:administrator\administrator cmd」に従っていますが、パスワードの入力を要求されたときに、正しく入力しているにもかかわらず、常にパスワードが間違っていると表示されます。助けてください。私は学校用のバッチ スクリプトを作成しようとしているのですが、これが私の邪魔をしている唯一のものです。

答え1

すでにWes Sayeedが説明したように、Windowsでは実行中のプログラムを昇格させることはできません。しかし(あなたにとっては遅すぎるとしても)ここ埋め込み VBS の一種を使用して、管理者権限でコマンド プロンプトを再起動するソリューションです。

@echo off

:checkPrivileges
NET FILE 1>NUL 2>NUL

if '%errorlevel%' == '0' (
  goto mainScript 
) else (
  goto getPrivileges
)
::-------------------------------------------------------------------------------------------------

:getPrivileges
  if '%1'=='ELEV' (shift & goto mainScript)
  echo.
  echo Selbstausfuehrung mit Administratorrechten...
  setlocal DisableDelayedExpansion
  set "batchPath=%~0"
  setlocal EnableDelayedExpansion
  echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\runAsAdmin.vbs"
  echo UAC.ShellExecute "!batchPath!", "ELEV", "", "runas", 1 >> "%temp%\runAsAdmin.vbs"
  "%temp%\runAsAdmin.vbs"
  exit /B
::-------------------------------------------------------------------------------------------------


:mainScript
REM Here we are doing admin stuff...
  cls
  echo Hallo Welt >C:\test.txt

答え2

管理者の資格情報を提供した場合でも、runas コマンドを使用してコマンド プロンプトを昇格することはできません。昇格されていないコマンド プロンプトからコマンド プロンプトを昇格する方法はありません。

関連情報