Учитывая этот фрагмент из файла AssemblyInfo.cs Blah.dll:
[assembly: AssemblyVersion("3.3.3.3")]
[assembly: AssemblyFileVersion("2.2.2.2")]
И затем в отдельном .exe:
var fileInfo = FileVersionInfo.GetVersionInfo("/path/to/Blah.dll");
fileInfo.ProductVersion == fileInfo.FileVersion == true;
Другие вопросы SO показывают, что ProductVersion "правильная", интересно, есть ли что-то странное в том, как я ее использую.
Не должно ProductVersion быть "3.3.3.3", а FileVersion "2.2.2.2 "? Что заставило бы его сообщать об обоих свойствах как AssemblyFileVersion?