Откуда берется версия взаимодействия при использовании TlbImp - PullRequest
0 голосов
/ 20 июня 2019

Я использую tlbimp для генерации .Net взаимодействия COM-сборки. Эта COM-сборка имеет версию продукта и версию файла, например, 7.X.X.X, но когда я использую TlbImp, в моем взаимодействии появляется версия, подобная 1.Y.0.0. Я знаю, что могу изменить эту версию, когда использую TLBImp через параметры исполняемых командных строк, но мне интересно, откуда эта версия. Могу ли я получить доступ к манифесту этой сборки COM? Почему я не вижу эту версию по свойству файла в проводнике?

У меня другая версия этой сборки, и я вижу, что сгенерированная версия всегда отличается, но я не могу найти, откуда эта версия.

Спасибо

1 Ответ

1 голос
/ 21 июня 2019

Я догадывался, что это версия typelib.Я взял тестовый проект, который имел typelib версии 1.0 и запустил tlbimp, и он произвел импортную сборку с версией файла 1.0.Затем я изменил версию typelib на 1.19, перекомпилировал и перезапустил tlbimp.Версия файла новой сборки импорта была 1.19 (ну, 1.19.0.0).

Используя OleView, вы можете загрузить библиотеку типов EXE / DLL, которую вы используете для tlbimp.Проверьте версию библиотеки типов.Сравните это с версией файла вашей сборки импорта.Могу поспорить, что они совпадают.

Имеет смысл, что они хотят, чтобы номера версий совпадали.

...