Нужен ли AssemblyInfo.cpp?

Я хочу удалить AssemblyInfo.cpp из-за некоторых ошибок метаданных, которые иногда возникают.

AssemblyInfo.cpp полезен для чего-нибудь? Или это можно удалить без проблем?

3 ответа

Решение

Я обнаружил одно отличие этого файла: он связан со значениями, указанными в вызовах Assembly.GetReferencedAssemblies, Я работал над отслеживанием номеров версий наших двоичных файлов из нашего хранилища SVN, внедряя в них номера ревизий. Изначально я тоже обновлялся AssemblyInfo.cpp и не нашел ничего сообщенного во вкладке сведений о свойствах файла для двоичного файла. Казалось, этот файл ничего не сделал для меня с точки зрения обновления этих деталей, чего не произошло с аналогичными обновлениями для csproj's AssemblyInfo.cs, Почему разница правильная?

Теперь в одном из таких csproj мы ссылаемся на vcxproj, и csproj записывает в журнал версии всех своих сборок, на которые ссылаются, используя.NET Assembly.GetReferencedAssemblies метод. Я обнаружил, что число, о котором сообщалось в этом журнале, не было версией vcxproj, как указано VS_VERSIONINFO ресурс, который я добавил (который получает информацию о версии на вкладке свойств файла). Вместо этого сообщенное число фактически совпадает с определенным в AssemblyInfo.cpp,

Так что для файлов vcxproj это выглядит так VS_VERSIONINFO способен обновлять содержимое, которое вы найдете на вкладке свойств файла, но AssemblyInfo.cpp способен выставить версию GetReferencedAssemblies, В C# эти две области отчетности кажутся объединенными. Может быть, есть способ направить AssemblyInfo.cpp распространяться в деталях файла некоторым способом, но я собираюсь в конечном итоге дублировать информацию о сборке в обоих местах на этапе предварительной сборки. Может быть, кто-то может найти лучший подход.

До сих пор у меня никогда не было AssemblyInfo.cpp в моих управляемых библиотеках C++, поэтому я не думаю, что это необходимо.

(Я только что добавил файл, чтобы иметь информацию о версии для моих библиотек C++).

Почему бы просто не исправить ошибки? На этой ноте, какие ошибки вы получаете?

Этот файл содержит такую ​​информацию, как номер версии, которая определенно необходима для использования сборки, которую вы создали.

Другие вопросы по тегам