john1990_1 Ответов: 2

Как получить версию программы динамически?


Я хочу знать версию программы, чтобы добавить ее к имени формы.

Что я уже пробовал:

Изменение каждой новой версии этой строки:
string version="4.8".

И используйте эту строку везде

2 Ответов

Рейтинг:
6

Maciej Los

Не знаю, чего вы хотите добиться, но вы можете это проверить: c# - как я могу получить версию файла сборки-переполнение стека[^]

Более подробная информация на сайте: Имя_сборки.Свойство Version (Система.Отражение)[^]


john1990_1

мне нужна "версия публикации", которую я изменяю в свойствах project->вручную.

john1990_1

сработало, я этим воспользовался:


if (ApplicationDeployment.IsNetworkDeployed)
{
версия = ApplicationDeployment.CurrentDeployment.CurrentVersion.ToString(2);
}

Maciej Los

Отлично!
Здоровье,
Мацей

john1990_1

большое спасибо :)

Рейтинг:
1

Graeme_Grant

Для любого типа приложений:

Assembly.GetExecutingAssembly().GetName().Version
Для приложения WinForm:
Application.ProductVersion
С помощью GetExecutingAssembly для сборки ссылка не всегда является вариантом. Это полезный статический вспомогательный класс для проектов, где вам нужно ссылаться на базовую сборку или версию сборки:
public static class CoreAssembly
{
    public static readonly Assembly Reference = typeof(CoreAssembly).Assembly;
    public static readonly Version Version = Reference.GetName().Version;
}


john1990_1

я не могу понять третий блок кода, я хочу "опубликовать версию", которую я изменяю в project->properties вручную.

Graeme_Grant

Это номер версии из AssemblyInfo.cs класс свойств. А вы пробовали?