0

我有一个函数,它返回 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;
}
4

1 回答 1

0

您可以尝试通过Assembly.Load按名称手动加载程序集以接收AssemblyName Object。这将为您提供一些版本信息

如果您想获取当前的可执行文件,请查看此

于 2018-10-12T08:17:32.100 回答