プロジェクトにマニフェストファイルを追加する
C#のプロジェクトであれば、「全般」の「アプリケーション マニフェスト ファイル(Windows のみ)」を追加します。
マニフェストファイルの修正
requestedExecutionLevel
のlevel
属性にrequireAdministrator
を指定します。
<?xml version="1.0" encoding="utf-8"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<!-- UAC マニフェスト オプション
Windows のユーザー アカウント制御のレベルを変更するには、
requestedExecutionLevel ノードを以下のいずれかで置換します。
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
requestedExecutionLevel 要素を指定すると、ファイルおよびレジストリの仮想化が無効にされます。
アプリケーションが下位互換性を保つためにこの仮想化を要求する場合、この要素を
削除します。
-->
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
</requestedPrivileges>
</security>
</trustInfo>
・・・(略)・・・
</assembly>
プロジェクトの設定
ここまでの設定で管理者権限で実行できない場合は、プロジェクト設定の「アプリケーション」-「リソース」が以下の通りとなっていることを確認します。