Visual studio 如何避免修改多个Visual Studio项目文件?

Visual studio 如何避免修改多个Visual Studio项目文件?,visual-studio,projects-and-solutions,Visual Studio,Projects And Solutions,当前情况: 我们正在开发将在微控制器上运行的C代码。我将此代码称为模型。它只是将在控制器上运行的最终软件的一部分。软件有不同的变体,因此我们有不同的模型代码,这与常用文件基本相同,但也有特定于模型的文件。 为了模拟模型的行为,开发了一个框架。该框架嵌入了模型代码,它提供了模型的输入和输出方法以及一些评估功能。该框架是用C/C++编写的。 除了框架代码外,模型代码还存储在不同的文件夹model_X、model_Y、。。。 现在,要运行模拟,您需要将框架与模型代码一起编译。我们使用Visual St

当前情况: 我们正在开发将在微控制器上运行的C代码。我将此代码称为模型。它只是将在控制器上运行的最终软件的一部分。软件有不同的变体,因此我们有不同的模型代码,这与常用文件基本相同,但也有特定于模型的文件。 为了模拟模型的行为,开发了一个框架。该框架嵌入了模型代码,它提供了模型的输入和输出方法以及一些评估功能。该框架是用C/C++编写的。 除了框架代码外,模型代码还存储在不同的文件夹model_X、model_Y、。。。 现在,要运行模拟,您需要将框架与模型代码一起编译。我们使用Visual Studio,每个框架+模型都有一个解决方案文件,因此存在Model_X.sln、Model_X.vcxproj、Model_Y.sln、Model_Y.vcxproj,它们使用相同的框架代码,但使用不同的模型代码

问题: 每当我对框架进行更改(例如,向项目添加新文件)时,我都必须修改每个.vcxproj。这确实是一项繁重的工作,而且容易出错,而且是多余的

问题: 我如何安排我的项目,以便在对框架进行更改时不需要修改每个.vcxproj文件

解决方案主张:

  • 使用将包含/编译定义插入到所有 .vcxproj文件

    +:“快速”解决方案

    -当前位置这并不能真正解决问题

  • 将每个项目分成两个项目,一个用于模型(model_X.vcxproj),一个用于框架(framework.vcxproj),将它们组合到一个特定于模型的解决方案(model_X.sln)中

    +:仅对framework.vcxproj进行框架更改,该文件在.sln文件之间共享

    -:如果模型代码有一个新的常用文件,我们仍然需要修改所有model.vcxproj文件

  • 使用Cmake之类的工具生成.vcxproj文件

    +:仅在一个位置进行更改

    -:开发人员必须更改cmake脚本,而不是项目文件

  • 你能告诉我,在我的情况下,哪些想法有意义,哪些没有意义?你还有别的想法吗