Я обнаружил одно различие для этого файла: оно связано со значениями, указанными в вызовах Assembly.GetReferencedAssemblies
. Я работал над отслеживанием номеров версий наших двоичных файлов из нашего хранилища SVN, внедряя в них номера ревизий. Первоначально я тоже обновлял AssemblyInfo.cpp
и не нашел ничего, о чем сообщалось во вкладке сведений о свойствах файла для двоичного файла. Казалось, этот файл ничего не сделал для меня с точки зрения обновления этих деталей, что было , а не в случае с аналогичными обновлениями для csproj AssemblyInfo.cs
. Почему разница правильная?
Теперь в одном из таких csproj мы ссылаемся на vcxproj, и csproj записывает в журнал версии всех своих ссылочных сборок, используя метод .NET Assembly.GetReferencedAssemblies
. Я обнаружил, что число, о котором сообщалось в этом журнале, не было версией vcxproj, как указано в добавленном мною ресурсе VS_VERSIONINFO
(который получает информацию о версии на вкладке сведений о свойствах файла). Вместо этого сообщенное число фактически совпадает с определенным в AssemblyInfo.cpp
.
Таким образом, для файлов vcxproj похоже, что VS_VERSIONINFO
способен обновлять содержимое, которое вы найдете на вкладке сведений о свойствах файла, но AssemblyInfo.cpp
может отображать версию GetReferencedAssemblies
. В C # эти две области отчетности кажутся объединенными. Может быть, есть способ указать AssemblyInfo.cpp
распространять информацию о файле каким-либо образом, но я собираюсь в итоге скопировать информацию о сборке в оба места на этапе предварительной сборки. Может быть, кто-то может найти лучший подход.