有没有办法避免构建dll的所有引用以模拟托管dll的“仅构建”?
答案 0 :(得分:1)
如果您阅读文件%ProgramFiles(x86)%\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets
,您会发现在目标ResolveProjectReferences
中构建引用项目取决于属性测试'$(BuildPassReferences)' == 'true'
。
如果在MSBuild invocaton上将此属性设置为false
,则不会重建引用:
msbuild ... /properties:BuildPassReferences=false,...
请注意,这不是受支持的功能,如果引用项目的输出不存在,您的编译可能会真正失败。与使用包含文件来解析外部引用的C ++不同,托管编译需要现有的引用DLL。
所以答案是肯定的,它是可能的,不受支持的,以及迈向麻烦的明确步骤,除非你想要实现的目标是非常具体和狭隘的。