VBSでバッチファイルを管理者として実行させる方法

このQ&Aのポイント
  • VBSであるバッチファイルを管理者として実行させる方法について解説します。右クリックメニューの「管理者として実行」を選択するとユーザーアカウント制御が表示されますが、VBSでInvokeVerbを使い同じ動作を実現することができます。
  • しかし、特権がないと怒られる場合があります。UACを無効にすることはできないため、代替案としてはレジストリを変更してみる方法がありますが、結果は同じでした。VBSで実行するにはどうしたらよいのでしょうか?
  • OSがVistaの場合でも同様の方法で実現することができますが、UACについては無効にすることができません。したがって、VBSでバッチファイルを管理者として実行させる際は、ユーザーアカウント制御のダイアログが表示される仕組みを回避する方法を探す必要があります。
回答を見る
  • ベストアンサー

VBSであるバッチファイルを管理者として実行させた

VBSであるバッチファイルを管理者として実行させたいと思っています。 バッチファイル単体を右クリックメニューの「管理者として実行」を選択するとユーザーアカウント制御が表示されて了解すると実行できます。 VBSでInvokeVerbを使い右クリックメニューと同じ「管理者として実行」を指定して実行すると特権がないと怒られてしまいます。 ユーザーアカウント制御が聞かれないところが怪しいですが、右クリックの操作という動きに違いはないと思っています。 VBSで実行するにはどうしたらよいでしょうか? OSはvistaです。 UACについては無効にできない理由があります。 ただ、メッセージ表示をしないようにレジストリを変更してみましたが、結果は同じでした。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

ストレートな回答ではないのですが、 そのバッチのショートカットを使う方法ではどうでしょうか。 ショートカットであれば、プロパティ→詳細設定(タブではなくボタンの方)で「管理者として実行」を設定できます。 ただ、非同期実行になるのでバッチとVBSで同期を取る必要があるかもしれませんが。 または、TASKにバッチを最上位として実行するタスクとして登録しておき、schtasks /runで実行する方法も考えられます。 この場合も同期の問題は残ります。

関連するQ&A

  • 管理者として実行させたい

    現在.exeファイルのプロパティ>互換性>特権レベル管理者として実行するにチェックが入っています。 通常管理者として実行すると、ユーザーアカウントの制御のダイアログが開くと思いますが、ダイアログは出てこないで、管理者として実行できていないようです。 .exeファイル右クリック>管理者として実行では、問題なくダイアログが出てきます。 UACを無効にして、再度有効にしても改善されませんでした。 対処法を知っている方いませんか?

  • vbsにてバッチファイルの実行

    vbsにて引数ありのバッチファイルを実行するためには、 どのようにしたらよろしいのでしょうか? 例えば、下記のものをvbsにて実行したいと考えております。 ------------------- aiueo.bat 1 2 3 4 5 ------------------- よろしくお願いします。

  • Vistaの「管理者として実行」について質問です。

    Vistaの「管理者として実行」について質問です。 VistaのUACを有効にしていて、アプリケーションを起動させるときに右クリックで「管理者として実行」を選んで実行しています。 これをマウス操作ではなく、例えばバッチファイルとして実行させることはできないでしょうか? RUNASを使って管理者として実行しても違った結果になってしまうんですよね。 例えばコマンドプロンプトを起動するときもウィンドウタイトルはRUNAS起動だと「cmd("管理者権限ユーザ"として実行中)」、右クリック→管理者として実行だと「管理者」となって微妙に違いますし。 右クリック~をやるのはいいのですが、手間なので簡単にできないものでしょうか?

  • 「管理者としてこのプログラムを実行する」がチェックできない

    最近PCを買い替え、Windows Vistaに慣れず四苦八苦しているものです。 プログラム(.exeファイル)を右クリックしプロパティを開くと、 互換性タブに「管理者としてこのプログラムを実行する」という 項目がありますが、グレー表示となっており、チェックを入れられません。 チェックを入れられるようにするためには、何の操作をすればよいか、 ご存じの方教えてください。 スタートアップに登録しているプログラムの中で管理者権限を必要と するものがあり、ユーザアカウント制御(UAC)の機能により毎回 管理者のパスワードを求められるため、上記設定により常に管理者 権限で実行するようにすることで解消したいと考えています。 よろしくお願いいたします。

  • バッチファイル→vbsへのカレントディレクトリ情報引渡をしたいです。

    バッチファイル→vbsへのカレントディレクトリ情報引渡をしたいです。 あるフォルダにvbsファイルとそれを実行するためのバッチファイル、vbsで読み込むリストファイルを置いています。 これを現在ログインしているのとは別のユーザで実行したいのですが、ファイルの記述をすべてフルパス指定しなければ動きませんでした。 しかし、フォルダが変わるたびにすべてのパスを書き換えるのが大変なため、以下のように修正を加えたいと思っています。 (1)バッチファイルでvbsを実行する際、カレントディレクトリ情報を取得し、パスを確定。(CDコマンド) (2)vbsファイル実行 (3)(1)のCDコマンドで読み込んだ情報をvbsに引き渡し、リスト読み込み。 バッチファイルからvbsに引き渡す部分、vbsがバッチファイルから受け取る部分の記述が分かりません。 一例を教えていただけないでしょうか?

  • 管理者として実行しない方法

    管理者アカウントにパスワードを設定してあり、標準ユーザーはパスワードがない状態のPCです。 標準ユーザーでexeファイルを実行すると、ユーザーアカウント制御機能が作動し、管理者アカウントのパスワードを入力する画面が表示されます。 特に「管理者として実行」をしているわけでないし、exeファイルも「install」「setup」等という類の名称のアプリケーションではありません。アイコンの右下に盾マークもついていないのに、なぜかユーザーアカウント制御が発動します。 特に管理者権限がなくても動作するアプリケーションなので、ユーザーアカウント制御は必要ないはずなのですが・・ 友人のPCで、同じ環境を生み同じアプリで試していただきましたが、ユーザーアカウント制御が発動することなく問題なく動作しました。 ネットを調べても、「ユーザーアカウント機能を無効にする方法」「管理者として実行する方法」のページはたくさんありますが、管理者として実行しない方法は特に見つかりませんでした。 上記の件でお分かりいただける方、ご回答ください。

  • バッチファイルの文字列をVBSに渡すには

    バッチファイルからVBSを実行しています。 echo msgbox "123" >> %TEMP%\abc.vbs cscript //NoLogo %TEMP%\abc.vbs >%TEMP%\abc.cmd del %TEMP%\abc.vbs call %TEMP%\abc.cmd del %TEMP%\abc.cmd このバッチを実行すると 123 が表示されます。 "123" の部分を変数として引渡したいのです。 set a=123 echo msgbox &a& >> %TEMP%\abc.vbs このようにして実行すると ’コマンドの構文が誤っています。’ となります。 よろしくお願いします。

  • VBSでバッチパラメーターと同等のものは

    コマンドプロンプトの「%1」はバッチファイル実行時に付加された最初のパラメータを表します。 VBSでも同じような働きをさせたいのですが書き方がわかりません。 どうすればよいでしょうか。 なお、VBSの実行方法はあるVBSファイルに処理したいファイルをD&Dする事になります。

  • VBSでバッチファイルを実行したときに

    VBSでbatファイルを起動したときに、 batファイルの実行が完了するまで、 「ただいま、処理中・・・」というような ダイアログボックスを表示し、処理完了後に そのダイアログボックスを消して、次処理へ いくようなスクリプトの記述の仕方がありまし たら教えてください。 よろしくお願いいたします。

  • VBS形式ファイル:ダブルクリックで実行させたい

    VBS形式ファイル:ダブルクリックで実行させたいです。 当方が現在トライしているのは: エクスプローラからVBS形式ファイル→アプリケーションから開く→プログラムの選択 によって何らかのプログラムを選択すればよいのかと思い、プログラムを探しておりますが適当なのが見つかりません。 この問題の経緯: 先ほどまではVBS形式ファイルをダブルクリックすると自動で実行できました。VBS形式ファイル編集時は右クリック→秀丸から開いておりました。 しかし、プログラム編集に没頭するあまり、右クリック→開くとしたところノートパッドで開かれたことから、秀丸が開いてほしいと思ってしまい、誤ってアプリケーションから開く→プログラムの選択→秀丸を選んでしまいVBS形式ファイルをダブルクリックすると自動で実行できなくなり、秀丸で開かれてしまうようになりました。 そこで: これを解消して以前のようにダブルクリック実行させたいです。 どうぞよろしくお願いします。

専門家に質問してみよう