2008-08-14 36 views
2

我有一個小型的VB.NET應用程序,我正在使用完整版本的Visual Studio 2005.在項目的發佈屬性中,I它是否設置爲每次發佈時自動遞增修訂。自動遞增的版本號不會顯示在關於框

問題是,它只是增加了安裝文件中的修訂版本。它似乎沒有更新關於框中的版本號(這是通用的,內置的,關於框模板)。該版本號似乎來自My.Application.Info.Version

我應該使用什麼,以便我的自動遞增版本號出現在about框中?

回答

1

在關於框代碼更改爲

Me.LabelVersion.Text = String.Format("Version {0}", My.Application.Deployment.CurrentVersion.ToString) 

請注意,所有其他的答案是正確的「我怎麼得到我的程序集的版本」,而不是陳述的問題「我如何顯示我的發佈版本」。

0

我不是VB.NET專家,但您是否嘗試將值設置爲例如1.0.0。*? 這應該會增加版本號(至少它在C#中的AssemblyInfo.cs中)。

+0

@Ptik請注意1.0.0。*。它有一個最大值,我認爲是2^16 – Rad 2008-08-14 16:44:51

+0

在VB 2012中,這是行不通的。它會創建一個編譯錯誤。 – VoteCoffee 2014-05-19 12:42:45

0

您選擇的選項僅用於更新設置編號。要更新程序編號,您必須修改AssemblyInfo。

C# [組件:的AssemblyVersion( 「XY 」)] [組件:的AssemblyFileVersion(「 XY 」)]

VB.NET 裝配:的AssemblyVersion(「 XY *」)

1

我花了第二次找到這一點,但我相信這是你在找什麼:

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

0

這是一個對於4個值中的每一個,最大值爲65535,但使用1.0。*或1.0。*。*時,彙編鏈接器將使用編碼時間戳(因此它不是一個簡單的自動增量,它可以重複! 65535.

查看我的回答this question更多鏈接和細節。