Visual studio 防止Visual Studio在依赖项更改时重新链接

Visual studio 防止Visual Studio在依赖项更改时重新链接,visual-studio,visual-c++,visual-studio-2012,Visual Studio,Visual C++,Visual Studio 2012,我有一个Visual Studio 2012解决方案,其中有几个DLL项目。 MainDLL依赖于SmallDLL。 如果我在SmallDLL中做了一个本地更改,而没有更改导出的API,那么只需在本地函数中做一个小更改,MainDLL就会重新链接 问题1:重新链接MainDLL背后的原因是什么?SmallDLL不是内置在MainDLL中的,而是在运行时获取的?如果我只构建SmallDLL,MainDLL工作得非常好。如果我更改SmallDLL的API,某些头文件将更改,因此必须重新编译一些Mai

我有一个Visual Studio 2012解决方案,其中有几个DLL项目。 MainDLL依赖于SmallDLL。 如果我在SmallDLL中做了一个本地更改,而没有更改导出的API,那么只需在本地函数中做一个小更改,MainDLL就会重新链接

问题1:重新链接MainDLL背后的原因是什么?SmallDLL不是内置在MainDLL中的,而是在运行时获取的?如果我只构建SmallDLL,MainDLL工作得非常好。如果我更改SmallDLL的API,某些头文件将更改,因此必须重新编译一些MainDLL的文件-那么重新链接是完全合理的,但是为什么要为本地更改重新链接呢

问题2:有没有办法防止这种重新链接?我需要MainDLL的项目和SmallDLL之间的依赖关系,以便在对SmallDLL进行更改后运行MainDLL的项目时,我希望重建SmallDLL


非常感谢

在VisualStudio 2008中,通过检查“构建并运行”选项 “选项”/“项目和解决方案”/“生成并运行”/“项目过期时运行”,然后选择“提示生成”或“从不生成”。
如果您选择不自动重建,请记住,当接口发生更改时,您必须手动执行此操作。

问题1:当SmallDll重新链接时,将使用新的时间戳生成一个新的导入库(即使它的字节对字节与旧库相同)。构建过程会看到更新的时间戳,并假设导入库已更改(无法了解其他情况),此时它别无选择,只能重新链接MainDLL。