以编程方式获取VB.net中的引用列表

时间:2015-12-09 20:05:38

标签: vb.net

有没有办法在VB.NET(Community 2013)项目及其路径,类型,版本等中获取所有引用?

我在stackoverflow上找到的东西可能与此有关,但是Imports似乎并没有自动完成任何我得到的东西:

进口EnvDTE

导入VSLangProj

Reading the list of References from All csproj project of solution sln (programmatically)

我的最终目标是寻找特定的DLL并显示版本。如果版本信息不易提取,我也可以使用GetFileVersionInfo()。理论上,我可以硬编码DLL引用的文件位置,但这看起来并不那么优雅。

(下面的评论提到,搜索列表也不优雅,是的,当然!也许问题应该改进为“我有一个已知的DLL加载(Frogtown.dll);我我不知道它在我的系统上的确切位置,但我知道它是在项目中指定的。有没有办法获得DLL版本,而不知道完整路径?)

发表第二条评论:

要清楚,有一个生命的,呼吸的VB.NET应用程序是用外部DLL(实际上是AForge.dll)构建的,我想知道它的版本基于它存储在C:\的位置程序文件(x86)\ AForge.NET \ Framework \ Release(我将在任何有代码的机器上安装它,因为一些应用程序可能会使用这些DLL。我编写VB添加-in。

这里有一个相关的问题(我正在通过stackoverflow存档查看),因为项目的项目引用部分中有一个CopyLocal选项。目前,它被设置为'True',因此AForge.dll被复制到本地输出目录,但我正在尝试设置系统,因此CopyLocal设置为'False',并且只引用它(它存在的地方)在C:\ Program Files(x86)\ AForge.NET \ Framework \ Release)。

现在,我通过执行以下调用来获取代码的版本:

GetFileVersionInfo(CurDir()&“\”&“AForge.dll”)

0 个答案:

没有答案