/MANIFESTDEPENDENCY (マニフェストの依存関係を指定する)
/MANIFESTDEPENDENCY:manifest_dependency
解説
/MANIFESTDEPENDENCY を使用すると、マニフェスト ファイルの <dependency> セクションに配置される属性を指定できます。
マニフェスト ファイルを作成する方法については、「/MANIFEST (side-by-side アセンブリ マニフェストを作成する)」を参照してください。
マニフェスト ファイルの <dependency> セクションの詳細については、「Publisher Configuration Files」を参照してください。
/MANIFESTDEPENDENCY 情報は、次の 2 つの方法のどちらかでリンカーに渡すことができます。
コマンド ラインで直接 (または応答ファイルで) /MANIFESTDEPENDENCY を指定します。
comment プラグマを経由して渡します。
プラグマ経由で渡される /MANIFESTDEPENDENCY コメントを次の例に示します。
#pragma comment(linker, "\"/manifestdependency:type='Win32' name='Test.Research.SampleAssembly' version='6.0.0.0' processorArchitecture='X86' publicKeyToken='0000000000000000' language='*'\"")
この結果、マニフェスト ファイルに次のエントリが含まれます。
<dependency>
<dependentAssembly>
<assemblyIdentity type='Win32' name='Test.Research.SampleAssembly' version='6.0.0.0' processorArchitecture='X86' publicKeyToken='0000000000000000' language='*' />
</dependentAssembly>
</dependency>
同じ /MANIFESTDEPENDENCY コメントを次のようにコマンド ラインで渡すこともできます。
"/manifestdependency:type='Win32' name='Test.Research.SampleAssembly' version='6.0.0.0' processorArchitecture='X86' publicKeyToken='0000000000000000' language='*'\"
リンカーは、/MANIFESTDEPENDENCY コメントを収集し、重複エントリを削除した結果として得られる XML 文字列をマニフェスト ファイルに追加します。リンカーが競合するエントリを検出した場合、マニフェスト ファイルは破損し、アプリケーションの起動は失敗します (失敗の原因を示すためにエントリがイベント ログに追加される場合があります)。
Visual Studio 開発環境でこのリンカー オプションを設定するには
プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。詳細については、「方法 : プロジェクト プロパティ ページを開く」を参照してください。
[構成プロパティ] ノードを展開します。
[リンカー] ノードを展開します。
[マニフェスト ファイル] プロパティ ページをクリックします。
[追加のマニフェスト依存関係] プロパティを変更します。
このリンカーをコードから設定するには
- AdditionalManifestDependencies を参照してください。