VC 项目的自动生成依赖项 (ABD) 插件,适用于 .NET 2003






3.67/5 (7投票s)
2005 年 1 月 28 日
3分钟阅读

63275

799
Visual Studio .NET 2003 插件,可自动设置 VC 项目的生成依赖项并生成链接库依赖图。
引言
有一段时间,我一直在寻找一种方法来自动设置 VS.NET 中 VC 项目在给定解决方案中的“生成依赖项”。我在网上找不到任何工具、插件或宏,于是我决定自己做一个工具。
另外,在 CodeProject 上,我偶然发现了 iLFis 的项目(“依赖图生成器”),该项目可以生成现有生成依赖项的图。所以,我想应该先完成前面那些步骤。因此,这个插件会自动设置你解决方案中每个 VC 项目的生成依赖项。
此外,它还可以根据每个 VC 项目属性中设置的链接库,生成解决方案中 VC 项目之间依赖关系的树状图。
这些图仅显示你解决方案中现有项目之间的依赖关系,而不包括与外部第三方库/项目之间的依赖关系。但图表显示了每个项目完整的依赖树(不仅仅是它直接依赖的库,还包括递归依赖)。它还会生成整个解决方案的完整依赖树。
背景
与此项目所基于的 iLFis 项目一样,它使用了优秀的 Graphviz 工具来生成图表。
以下是这个项目背后的一些基本思想:
- 对于解决方案中的每个 VC 项目,我都会创建一个它链接的 .lib 文件列表(来自“附加依赖项”)。
- 对于每个 VC 项目,我只保留解决方案中存在的已链接 lib 文件。
- 对于每个 VC 项目,我递归地删除分支中的重复条目。
它有一个非常基本的树创建/管理机制。
限制
- 它无法检测你是否存在依赖循环(这非常糟糕)。
安装
- 请从 此处 安装 Graphviz。
- 使用 setup.exe 安装程序来安装 ABD 插件。
用法
要使用此工具,请执行以下操作:
- 运行 Visual Studio .NET。
- 打开你想要处理的解决方案(.sln)。
现在,在你的“工具”菜单中有一个新的弹出菜单:ABDAddin
...
- 设置生成依赖项:警告:该工具将更新你 .sln 文件中的生成依赖项。因此,如果你不确定你在做什么,在使用此工具之前,请先复制一份你的 .sln 文件。我将不对任何损失或损坏负责。
- ABD 项目图:生成所有项目的理论生成依赖项图。
- ABD 解决方案图:生成整个解决方案的理论生成依赖项图。
你可以通过“解决方案资源管理器”和“类视图”中的上下文菜单来访问这些命令。
你的解决方案的上下文菜单现在有一个 ABDAddin
弹出菜单。你可以在选定项目的上下文菜单中访问“ABD 项目图”命令。(此命令将仅为选定项目生成图表。)
ABDAddin
还有一个“工具-选项”对话框中的选项页面。
关注点
这个个人 C# 项目实际上是我第一次尝试使用这种语言。我来自 C++/MFC/OpenGL 世界。所以,代码肯定会有多次更新来提高性能,因为我写的是基础的 C# 代码(作为 C++ 开发者,现在的代码在我看来很丑)。
对于 2.0 版本,我在核心的自动生成依赖项代码方面没有做太多改进,但我主要花时间理解了 Command、CommandBars 和 VS 插件的功能。
历史
- 版本 1.0 2005 年 1 月 28 日 - 初始发布。
- 版本 2.0 - 2005 年 2 月 16 日
- 将工具转换为 Visual Studio .NET 插件。
- 在设置生成依赖项后,可以独立生成图表。
- 可以通过“类视图”和“解决方案资源管理器”的上下文菜单生成选定项目的图表。
- 在“工具-选项”中添加插件选项,以便选择输出文件夹、配置类型。
- 在 Visual Studio 中输出图表。