Winform表单文本中的版本号

我如何将程序集版本号(我设置为自动增量)插入到Winform表单文本中?

其中任何一个都可以工作:

var version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version; this.Text = String.Format("My Application Version {0}", version); string version = System.Windows.Forms.Application.ProductVersion; this.Text = String.Format("My Application Version {0}", version); 

假设这是在Form上运行,你希望显示文本

 Text = Application.ProductVersion 

快速的方式获取完整版本的string(例如“1.2.3.4”)

我在WinForm中使用以下内容:

 public MainForm() { InitializeComponent(); Version version = Assembly.GetExecutingAssembly().GetName().Version; Text = Text + " " + version.Major + "." + version.Minor + " (build " + version.Build + ")"; //change form title } 

没有向用户显示修订版号,版本号是足够的技术信息

确保您的AssemblyInfo.cs结束于以下(默认情况下删除它的版本)以使VisualStudio自动增加构build版本号和修订版号。 您必须在每个版本中自行更新主要版本和次要版本(更新新function的主要版本,更新版本时只需修复):

 // Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyVersion("1.0.*")] 

它在System.Reflection.AssemblyName类中。

 Assembly.GetExecutingAssembly().GetName().Version.ToString() 

你可以在这里看到: http : //msdn.microsoft.com/en-us/library/system.reflection.assemblyname.version.aspx

 class Example { static void Main() { Console.WriteLine("The version of the currently executing assembly is: {0}", Assembly.GetExecutingAssembly().GetName().Version); Console.WriteLine("The version of mscorlib.dll is: {0}", typeof(String).Assembly.GetName().Version); } } 
 System.Reflection.Assembly assembly = System.Reflection.Assembly.GetExecutingAssembly(); System.Diagnostics.FileVersionInfo fvi = System.Diagnostics.FileVersionInfo.GetVersionInfo(assembly.Location); return fvi.ProductVersion;