佐々木屋

技術的なことから趣味まで色々書きます

アプリケーションを管理者権限で実行する

UACが有効の場合はアプリケーションを実行する際、管理者権限で実行しないと色々不便になります。
「右クリック」→「管理者権限で実行」とするか、アプリのプロパティの互換性の所で「管理者としてこのプログラムを実行する」とすればいいのですが、アプリケーションマニフェストを変更すれば常に管理者権限で実行されるようになります。

  1. ソリューションエクスプローラーのプロジェクトで右クリック
  2. コンテキストメニューから「追加」→「新しい項目を追加」を押下
  3. 「アプリケーション マニフェストファイル」を選択して追加ボタン押下

f:id:sasaki816:20181221173242j:plain
アプリケーションマニフェスト


なお、アプリケーションマニフェストが追加できない(一覧に表示されない)場合は、以下のからマニフェストファイルにアクセスできます。

  1. ソリューションエクスプローラーのプロジェクトで右クリック
  2. コンテキストメニューから「プロパティ」を押下
  3. アプリケーションタブの「Windows設定の表示」ボタンを押下

f:id:sasaki816:20181221174011j:plain
Windows設定の表示


requestedExecutionLevelのlevelの値を「requireAdministrator」に変更します。

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />


なお、UACが機能している状況でマニフェストファイルを管理者に変更したプロジェクトファイルを開く場合、VisualStudio自体も管理者権限で起動する必要があり、且つプロジェクトファイルがローカルにある必要があります。ネットワーク越しの場合は管理者権限でデバッグを実行することができません。