Почему .TLB не перекомпилируется MIDL? - PullRequest
1 голос
/ 06 октября 2009

В моем основном каталоге проекта есть файл .TLB. Он содержит старую информацию и скомпилирован в двоичный файл - что я могу сказать, посмотрев на скомпилированный двоичный файл в шестнадцатеричном редакторе.

Что странно, так это то, что я обновил свой .IDL в главном каталоге VC ++, и он скомпилирован в .TLB в каталоге сборки проекта (\ Debug), но он не включен в двоичный файл.

Я решил проблему, скопировав \ Debug \ Project.TLB в главный каталог, но почему вновь скомпилированный .TLB не используется автоматически для двоичного файла?

1 Ответ

1 голос
/ 06 октября 2009

TLB включается через скрипт ресурса, поэтому, если файл .rc указывает на TLB в главном каталоге проекта, именно он будет использоваться.

Был ли этот проект обновлен с более старой версии Visual Studio? Кажется, я помню, что в какой-то момент они изменили расположение вывода по умолчанию.

Что вам нужно сделать, это зайти в файл .rc и настроить путь так, чтобы он указывал на фактическое местоположение вывода. Это может быть немного сложно с разделением конфигураций Debug / Release, хотя ...

Другая идея состоит в том, чтобы изменить вывод MIDL для размещения TLB в главном каталоге проекта, чтобы путь .rc указывал на нужную вещь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...