我们有一个仅限Windows桌面产品套件,它包含多个.exe
应用程序,并且(显然)这些应用程序之间有很多共享库。有大约20个exe应用程序,也许还有大约20个共享库,每个应用程序都使用这些应用程序(有些库是非常具体的,有些只是你的好(?)旧的FooUtils.dll
)大多数代码是C ++,一些C#。
目前,所有这些都驻留在single Visual Studio 2005解决方案中,并且都是一起构建和发布的。这很好用,每个开发人员总是可以编辑/查看/调试他需要的任何代码。该产品套件中约有15个开发人员(混合C ++ / C#)。
由于迁移压力(语言功能,新的第三方组件),将某些应用程序(阅读.exe
项目)迁移到较新的Visual Studio版本变得越来越紧迫。一些VS 2010可能(第三方依赖)一些VS2015。而 some 我们只是不从VS2005迁移它们的资源(第三方约束,以及时间/预算限制)。
这意味着几个Visual Studio版本必须存在几个共享的 C ++ 库。 (与exe项目相反 - 这些只是为一个选定的VS版本构建/维护。)
给定一组(内部)共享库需要为多个不同的Visual-C ++创建 - 并且应该可以轻松编辑和维护适用于所有开发人员,我们如何使Utils.vcproj(2005)的Utils.vcxproj(2010)和Utils.vcxproj(2015)保持同步?
主要是为了避免手动维护项目中包含的所有文件,还要考虑这些项目的项目设置/ .[vs]props
设置。
到目前为止的想法:
答案 0 :(得分:0)
如果要避免在不同版本的Visual Studio中手动更新项目文件,则必须为这种或那种类型的项目配置主配置。您列出的两个选项基本上是您的选择:
devenv.exe <project/solution file> /upgrade
,您可以从command line升级项目。