/MANIFESTUAC (UAC 情報をマニフェストに組み込む)

更新 : 2008 年 7 月

ユーザー アカウント制御 (UAC) 情報をプログラム マニフェストに組み込むかどうかを指定します。

/MANIFESTUAC
/MANIFESTUAC:NO
/MANIFESTUAC:fragment
/MANIFESTUAC:level=_level
/MANIFESTUAC:uiAccess=_uiAccess

パラメータ

  • fragment
    level 値および uiAccess 値を格納する文字列。詳細については、このトピックで後述する「解説」を参照してください。

  • _level
    asInvoker、highestAvailable、requireAdministrator のいずれか。既定値は asInvoker です。詳細については、このトピックで後述する「解説」を参照してください。

  • _uiAccess
    アプリケーションがユーザー インターフェイスの保護レベルをバイパスし、入力をデスクトップ上のアクセス許可の高いウィンドウ (たとえばオンスクリーン キーボード) にアクセスできるようにするには true、それ以外の場合は false。既定値は false です。true の設定は、ユーザー インターフェイスのユーザー補助アプリケーションでのみ行います。

解説

コマンド ラインで複数の /MANIFESTUAC オプションを指定した場合は、最後に入力したオプションが優先されます。

/MANIFESTUAC:level に指定できるのは、次のとおりです。

  • asInvoker: アプリケーションは、アプリケーションを開始したプロセスと同じアクセス許可で実行されます。[管理者として実行] を選択すると、アプリケーションをより高いアクセス許可に昇格させることができます。

  • highestAvailable: アプリケーションは、可能な限り高いアクセス許可レベルで実行されます。アプリケーションを開始するユーザーが管理者グループのメンバである場合、このオプションは requireAdministrator と同じです。使用可能な最も高いアクセス許可レベルが、開始したプロセスのレベルより高い場合は、資格情報の入力が求められます。

  • requireAdministrator: アプリケーションは管理者のアクセス許可で実行されます。アプリケーションを開始するユーザーは、管理者グループのメンバである必要があります。開始したプロセスが管理者のアクセス許可で実行されない場合は、資格情報の入力が求められます。

/MANIFESTUAC:fragment オプションを使用することにより、level 値と uiAccess 値の指定を 1 ステップで行うことができます。fragment は、次の形式で指定します。

"level=[ asInvoker | highestAvailable | requireAdministrator ] uiAccess=[ true | false ]"

Visual Studio 開発環境でこのリンカ オプションを設定するには

  1. プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。詳細については、「方法 : プロジェクト プロパティ ページを開く」を参照してください。

  2. [構成プロパティ] ノードを展開します。

  3. [リンカ] ノードを展開します。

  4. [マニフェスト ファイル] プロパティ ページをクリックします。

  5. [ユーザー アカウント制御 (UAC) を有効にする]、[UAC の実行レベル]、および [UAC による UI 保護のバイパス] の各プロパティを変更します。

このリンカをコードから設定するには

  • EnableUAC()、UACExecutionLevel()、および UACUIAccess() を参照してください。

参照

参照

リンカ オプションの設定

リンカ オプション

履歴の変更

日付

履歴

理由

2008 年 7 月

誤情報を削除

コンテンツ バグ修正