最終更新:2023-12-18 (月) 12:36:48 (128d)
UAC
Top / UAC
USB Audio Class
UAC/バージョン
USB Audio Class 2.0
USB Audio Class 1.0
User Account Control
マニフェストファイル({AppName?}.manifest)に設定を書く必要がある
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="WindowsApplication1" type="win32"/> <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"> <security> <requestedPrivileges> <requestedExecutionLevel level="requireAdministrator"/> </requestedPrivileges> </security> </trustInfo> </assembly>
ひな形
<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="asInvoker" uiAccess="false" /> </requestedPrivileges> </security>
requestedExecutionLevel?のlevel
値 | 権限 |
asInvoker | 親プロセスと同じアクセス権限(標準) |
requireAdministrator | 管理者としての完全なアクセス権限 |
highestAvailable | 現在のユーザーが獲得できる最高のアクセス権限。つまり、現在のユーザーが管理者グループのメンバであれば、管理者権限となる |
uiAccess
- ユーザー補助アプリケーションの場合にのみ「true」に設定できる(既定値はfalse)。
- これをtrueに設定すると、オンスクリーン・キーボードなどのユーザー補助のUI(ユーザー・インターフェイス)にアクセスできるようになる。
特定のアプリケーションを実行するときに「ユーザアカウント制御」ダイアログを表示させない - Compatibility Administrator で「カスタムの互換修正プログラム」を作成する
アプリケーションマニフェスト
- UAC の動作を設定するのは、アプリケーションマニフェストと呼ばれる物になります。
- 大きく分けると以下の3パターンで UAC の挙動を制御します。
- EXE自体に埋め込む場合
- ファイルとしてEXEと同じフォルダに設置
- アプリケーションの互換モードにより設定(EXEを右クリックして管理者として実行等)