web-dev-qa-db-ja.com

コマンドプロンプトから「管理者として実行」としてアプリケーションを実行する方法

test.batというバッチファイルがあります。 test.batファイルで以下の指示を呼び出しています。

start /min powershell.exe %sysdrive%\testScripts\testscript1.ps1

これをPromptコマンドで実行すると、テストスクリプトは正常に実行されています。私はそれを管理者として実行したいのです(デスクトップショートカットを作成して管理者として実行したように。ユーザー名やパスワードを要求してはいけません)。

上記の/elevate/NOUACおよびtest.batパラメータを追加してみましたが、運が悪くなりました。どうすればこの問題を解決できますか?

私はそれを手動で行う方法を知っています、しかし私はこれをコマンドプロンプトから実行させたいです。

( - Marnix Klooster ):... スーパーユーザーの質問に対する回答昇格された権限でコマンドラインからプログラムを実行する方法 で提案したような追加のツールは使用しません。 )

117

これを試して:

runas.exe /savecred /user:administrator "%sysdrive%\testScripts\testscript1.ps1" 

それは最初にパスワードを保存し、二度と尋ねることはありません。管理者パスワードを変更すると、もう一度プロンプトが表示されることがあります。

82
Dhana

これを参照してください TechNet article: Runasコマンドのドキュメント

コマンドプロンプトから:

C:\> runas /user:<localmachinename>\administrator cmd

ドメインに接続している場合は、

C:\> runas /user:<DomainName>\<AdministratorAccountName> cmd
22
John Ruiz

psexec -hがこれを行う方法のようです。

 -h         If the target system is Windows Vista or higher, has the process
            run with the account's elevated token, if available.

どれが...Sysinternals - PsExecのオンラインドキュメントに記載されていないようです。

しかし、それは私のマシン上で動作します。

6
Ben Curthoys