为什么获胜';当它所依赖的C#项目被修改时,C++项目是否会自动重建
本文关键字:项目 修改 C++ 是否 重建 获胜 依赖 为什么 | 更新日期: 2023-09-27 18:01:05
我有一个Visual Studio 2012解决方案,其中包括一个C#项目Addin
和一个C++项目Shim
。如果我对Addin
(C#(进行更改,我希望Shim
(C++(重建,但我似乎无法实现。当我按F5时,Addin
重建,但Shim
没有。如果我Rebuild Solution
,那也没关系,但解决方案中还有很多其他项目,每次都要花很长时间。
我正在使用64位处理器在64位Windows Pro 8.0上运行Visual Studio 2012 Update 4。
这就是我迄今为止所尝试的:
-
通过"项目依赖项…"使
Shim
依赖于Addin
-
将
Shim
设置为参考Addin
-
(已添加引用(将"引用程序集输出"answers"链接库依赖项"设置为True
-
将
Addin
的项目文件夹和输出文件夹添加到Shim
的properties=>Config=>C/C++下的"Additional Include Directories"> -
阅读本文:Visual Studio 2012;当依赖关系发生变化(没有好的(时,不能在运行中构建项目
-
阅读本文:VS 2012不构建依赖项目(将
Shim
的中间文件夹更改为新文件夹没有工作( -
通过检查
obj
和bin
文件夹(即(检查Addin
是否正确重建 -
检查
Shim
的obj
和bin
文件夹是否有任何更改(没有( -
阅读以下文章:Visual Studio/MSBUILD在更新源文件时不更新.lib文件,不重建可执行文件但重新编译对象文件(不相关,因为如果我修改
Shim
,它会正确重建( -
正在检查生成输出日志。唯一的警告是
Project file contains ToolsVersion="12.0". This toolset is unknown or missing.
,我认为这是一个无关的NuGet(包管理器(错误,因为我运行的是VS2012而不是VS2013。 -
阅读http://msdn.microsoft.com/en-us/library/ez524kew.aspx#sectionToggle6和http://msdn.microsoft.com/en-us/library/et61xzb3.aspx,这似乎表明我已经做了必要的事情。
再加上在谷歌上广泛搜索,尽可能多地浏览VS设置。
我知道我可以通过右键单击并选择"仅项目"=>重建来强制重建,但很容易忘记,所以我真的很想解决这个问题。有人能帮忙吗?
听起来您可能只需要在构建c++项目之前清理它,以便它获取更新的c#输出。我相信"重建"操作基本上是先执行"清理",然后执行"重建",这可能就是项目重建对您有效的原因。