/MANIFESTDEPENDENCY(指定清单依赖项)
/MANIFESTDEPENDENCY:manifest_dependency
注解
/MANIFESTDEPENDENCY 允许指定将放入清单文件的 <依赖项> 段的特性。
有关如何创建清单文件的信息,请参阅 /MANIFEST(创建并行程序集清单)。
有关清单文件的 <依赖项> 部分的详细信息,请参阅发行者配置文件。
/MANIFESTDEPENDENCY 信息可以通过以下两种方式之一传递给链接器:
直接在命令行上(或响应文件中)使用 /MANIFESTDEPENDENCY。
通过注释 pragma。
以下示例演示通过 pragma 传递的 /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 开发环境中设置此链接器选项
打开项目的“属性页” 对话框。 有关详细信息,请参阅在 Visual Studio 中设置 C++ 编译器和生成属性。
选择“配置属性”>“链接器”>“清单文件”属性页。
修改“其他清单依赖项”属性。