blechmusikの日記

キー・カスタマイズ・ソフトウェア "DvorakJ" の覚え書きをはじめとして様々なことを書いています。

任意のプログラムを管理者権限で実行する

RunAsAdmin("cmd") のように、 RunAsAdmin の引数にプログラムのパスを渡せば、管理者権限でコマンドプロンプトを起動させる。具体的には、ユーザーが管理者権限を取得しているならプログラムを起動させ、他方、ユーザーが管理者権限を取得していなければ管理者権限でプログラムを起動させる。後者の場合、スクリプト自身を終了させる。Lexikos Posted: Wed Nov 03, 2010 9:28 amを参考にした。

RunAsAdmin(arg) {
  if A_IsAdmin
    run "%arg%"
  else
  {
    Run *RunAs "%arg%"
    ExitApp
  }
}