У меня есть небольшое приложение VB.NET, над которым я работаю, используя полную версию Visual Studio 2005. В свойствах публикации проекта для него установлено значение « Автоматически увеличивать ревизию при каждой публикации» .
Проблема в том, что он только увеличивает ревизию в установочных файлах. Похоже, что он не обновляет номер версии в окне About Box (это стандартный встроенный шаблон About Box). Этот номер версии, похоже, исходит от My.Application.Info.Version .
Что я должен использовать вместо этого, чтобы мой автоматически увеличивающийся номер редакции отображался в поле about?
Измените код поля «О программе» на
Me.LabelVersion.Text = String.Format("Version {0}", My.Application.Deployment.CurrentVersion.ToString)
Обратите внимание, что все остальные ответы правильны для «как мне получить мою версию сборки», а не для заданного вопроса «как мне показать мою версию для публикации».
Я не эксперт по VB.NET, но вы пытались установить значение, например, 1.0.0. *? Это должно увеличить номер редакции (по крайней мере, это происходит в AssemblyInfo.cs в C #).
Опция, которую вы выбираете, предназначена только для обновления номера установки. Чтобы обновить номер программы, вы должны изменить AssemblyInfo.
C # [Assembly: AssemblyVersion ("XY ")] [Assembly: 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
Это максимум 65535 для каждого из 4 значений, но при использовании 1.0. * Или 1.0. *. * Компоновщик сборки будет использовать закодированную временную метку (так что это не простое автоинкремент, и он может повториться!), Что будет соответствовать 65535.
Смотрите мой ответ на этот вопрос для получения дополнительных ссылок и деталей.