Что такое IDR_TYPELIB1? - PullRequest
       9

Что такое IDR_TYPELIB1?

0 голосов
/ 21 июня 2011

Я не могу найти хороших ресурсов онлайн о том, что это такое. Это требуется на одном из этапов развертывания сборки .NET для использования COM, но нет подробных сведений о том, что это такое и что это значит.

В качестве примера, вот что-то из книги, которую я читаю на Interop:

Далее необходимо создать скрипт ресурса MyExampleAssembly.res со следующим оператором:

(запускается из командной строки VS в каталоге, куда вы только что экспортировали компонент .NET с помощью утилиты экспорта библиотеки типов)

IDR_TYPELIB1 typelib "MyExampleAssembly.tlb"

Что такое IDR_TYPELIB1?

Кроме того, это не работает для меня. Я попытался запустить это, и он не компилируется. Я получаю сообщение "IDR_TYPELIB1" не распознан как внутренняя или внешняя команда ".

1 Ответ

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

Это макрос, который обычно генерируется автоматически при использовании редактора неуправляемых ресурсов. Просто используйте константу, 1 в порядке. Вы также используете неправильный инструмент для компиляции скрипта ресурса по звуку, вы должны запустить rc.exe. Он переводит ваш файл .rc в файл .res, который может использовать компилятор C #.

Встраивание библиотеки типов не является обязательным, кстати, это не то, что COM Automation требует. Это не очень хорошая идея делать это в управляемом проекте, поскольку .tlb генерируется после сборки проекта. А не до того, как это происходит в собственном COM-проекте. Вы создаете его с помощью regasm.exe, параметра / tlb или утилиты tlbexp.exe. Ваш клиент тоже может это сделать.

...