首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >以编程方式获取DLL的版本号

以编程方式获取DLL的版本号
EN

Stack Overflow用户
提问于 2009-11-18 19:55:54
回答 6查看 127.7K关注 0票数 163

是否可以通过编程方式从任何.NET动态链接库获取版本号?

如果是,是如何实现的?

EN

回答 6

Stack Overflow用户

发布于 2012-09-21 18:05:35

这里有一个很好的方法,使用一些反射来获得包含特定类的DLL版本:

代码语言:javascript
复制
var ver = System.Reflection.Assembly.GetAssembly(typeof(!Class!)).GetName().Version;

只需替换!Class!使用在要获取其版本的DLL中定义的类的名称。

这是我首选的方法,因为如果我为不同的部署移动DLL,我就不必更改文件路径。

票数 37
EN

Stack Overflow用户

发布于 2009-11-18 19:59:27

为启动的程序集(winform、控制台应用程序等)获取它。

代码语言:javascript
复制
using System.Reflection;
...
Assembly.GetEntryAssembly().GetName().Version
票数 25
EN

Stack Overflow用户

发布于 2019-02-26 17:44:58

@Ben的回答被证明对我很有用。但我需要检查产品版本,因为它是我的软件中发生的主要增量,并遵循语义版本控制。

代码语言:javascript
复制
myFileVersionInfo.ProductVersion

这种方法符合我的期望。

更新:我们可以使用Assembly获取产品版本,而不是在程序中明确提到dll路径(在生产版本中需要)。

代码语言:javascript
复制
Assembly assembly = Assembly.GetExecutingAssembly();
FileVersionInfo fileVersionInfo =FileVersionInfo.GetVersionInfo(assembly.Location); 
string ProdVersion= fileVersionInfo.ProductVersion;
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1755504

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档