我有一個小型的VB.NET應用程序,我正在使用完整版本的Visual Studio 2005.在項目的發佈屬性中,I它是否設置爲每次發佈時自動遞增修訂。自動遞增的版本號不會顯示在關於框
問題是,它只是增加了安裝文件中的修訂版本。它似乎沒有更新關於框中的版本號(這是通用的,內置的,關於框模板)。該版本號似乎來自My.Application.Info.Version。
我應該使用什麼,以便我的自動遞增版本號出現在about框中?
我有一個小型的VB.NET應用程序,我正在使用完整版本的Visual Studio 2005.在項目的發佈屬性中,I它是否設置爲每次發佈時自動遞增修訂。自動遞增的版本號不會顯示在關於框
問題是,它只是增加了安裝文件中的修訂版本。它似乎沒有更新關於框中的版本號(這是通用的,內置的,關於框模板)。該版本號似乎來自My.Application.Info.Version。
我應該使用什麼,以便我的自動遞增版本號出現在about框中?
在關於框代碼更改爲
Me.LabelVersion.Text = String.Format("Version {0}", My.Application.Deployment.CurrentVersion.ToString)
請注意,所有其他的答案是正確的「我怎麼得到我的程序集的版本」,而不是陳述的問題「我如何顯示我的發佈版本」。
我不是VB.NET專家,但您是否嘗試將值設置爲例如1.0.0。*? 這應該會增加版本號(至少它在C#中的AssemblyInfo.cs中)。
您選擇的選項僅用於更新設置編號。要更新程序編號,您必須修改AssemblyInfo。
C# [組件:的AssemblyVersion( 「XY 」)] [組件:的AssemblyFileVersion(「 XY 」)]
VB.NET 裝配:的AssemblyVersion(「 XY *」)
我花了第二次找到這一點,但我相信這是你在找什麼:
using System;
using System.Reflection;
public class VersionNumber
{
public static void Main()
{
System.Reflection.Assembly assembly = System.Reflection.Assembly.GetExecutingAssembly();
Version version = assembly.GetName().Version;
Console.WriteLine ("Version: {0}", version);
Console.WriteLine ("Major: {0}", version.Major);
Console.WriteLine ("Minor: {0}", version.Minor);
Console.WriteLine ("Build: {0}", version.Build);
Console.WriteLine ("Revision: {0}", version.Revision);
Console.Read();
}
}
它是基於在以下網站提供的代碼 - http://en.csharp-online.net/Display_type_version_number
這是一個對於4個值中的每一個,最大值爲65535,但使用1.0。*或1.0。*。*時,彙編鏈接器將使用編碼時間戳(因此它不是一個簡單的自動增量,它可以重複! 65535.
查看我的回答this question更多鏈接和細節。
@Ptik請注意1.0.0。*。它有一個最大值,我認爲是2^16 – Rad 2008-08-14 16:44:51
在VB 2012中,這是行不通的。它會創建一個編譯錯誤。 – VoteCoffee 2014-05-19 12:42:45