Visual Studio 在不使用引用的情况下设置构建依赖项?

cotxawn7  于 2023-10-23  发布在  其他
关注(0)|答案(3)|浏览(150)

我正在研究一个解决方案,其中一个项目实际上是解决方案构建的主exe的插件。由于这个项目是一个插件,所以从主exe引用插件是错误的(该程序集不保证存在于部署中,它是可选的)。
所以我的问题是如果我修改了插件项目中的代码,然后按F-5运行,Visual Studio将不会总是构建我的插件(因为基于引用树,主exe似乎并不依赖于它)。
是否存在可以更改的解决方案或项目级设置,以便在运行时包含此插件项目(而不添加引用)?
我知道工具的全局设置|选项|构建并运行,但我不想仅仅为了正确构建这个解决方案而全局地更改VS的行为(另外,如果该设置与解决方案或项目一起使用,那么当其他开发人员 checkout 它时,他们应该简单地继承该设置)
顺便说一句:这些是VS 2005解决方案中的C#项目。

ljsrvy3e

ljsrvy3e1#

右键单击解决方案资源管理器->属性->项目目录中的根节点。(VS 2008用户:这个特性有自己的对话框,可以直接从上下文菜单中访问。)
依赖关系图表示为复选框的邻接列表。你选择的每个项目都将检查和禁用其直接引用[假设你使用项目引用,而不是程序集引用]。如果其他复选框会创建循环依赖项,则可以禁用它们。
对于任何未禁用的复选框,选中/取消选中将在解决方案文件中写入**ProjectSection(ProjectDepencies)**节。因此,您的设置将通过源代码控制传播给其他开发人员。
公平的警告:如果您使用MSBuild(包括Team Build的任何版本),它并不总是以与Visual Studio内部生成相同的方式处理 .sln文件自定义。.sln不是本机MSBuild文件类型,与 *.??proj文件。我自己也遇到了问题described here;我有时也会看到相反的行为。

6qfn3psc

6qfn3psc2#

我可以建议创建一个虚拟(空)项目,代表主exe和插件的组合,并配置该项目依赖于两者,但在启动时运行EXE吗?

ia2d9nvy

ia2d9nvy3#

转到工具->选项->构建并运行,然后 * 取消选中 *“运行时仅构建启动项目和依赖项”选项。
这本质上告诉Visual Studio在启动任何东西之前,总是确保所有东西都完全构建好了。

相关问题