Получить версию файла конкретного проекта - PullRequest
0 голосов
/ 12 октября 2018

У меня есть функция, которая возвращает версию файла сборки проекта C # (в Visual Studio).Проблема в том, что он не находится в основном проекте, поэтому вместо возврата версии фактического приложения он возвращает версию проекта (сборки), в которой он находится. Я попытался использовать GetCallingAssembly(), чтобы получитьверсия основного проекта вместо, но без удачи.И даже если бы я заставил его работать, я мог бы представить, что он довольно легко ломается, если я связываю свои вызовы через несколько проектов.Есть ли способ получить версию проекта по его названию?Например, если мой основной проект называется SolutionName.ProjectName, а главное окно (это проект WPF) называется MainWindow.xaml (если это имеет какое-либо значение).

Мой текущий код:

private string GetFileVersion()
{
    System.Reflection.Assembly assembly = System.Reflection.Assembly.GetCallingAssembly();
    FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(assembly.Location);
    return fvi.FileVersion;
}

1 Ответ

0 голосов
/ 12 октября 2018

Можно попытаться загрузить сборку вручную по ее имени через Assembly.Load , чтобы получить объект AssemblyName .Это предоставит вам некоторую информацию о версии .

Если вы хотите получить текущий исполняемый файл , проверьте это

...