Как извлечь TypeLib из COM-файла в командной строке - PullRequest
5 голосов
/ 26 ноября 2010

Недавно мне нужно было создать сборку взаимодействия. После некоторого поиска в Google я обнаружил tlbimp.exe. Моя следующая проблема заключалась в том, что моя библиотека COM не поставлялась с файлом .tlb. Дальнейшее поиск в Google показало, что тип lib часто включается в качестве ресурса в exe / dll. Конечно, открытие exe-файла в VS2010 показало, что он имеет тип lib, и щелчок правой кнопкой мыши позже у меня был файл tlb для использования с tlbimp. Потрясающе.

Однако это не очень хороший процесс. Должен ли я сделать это в будущем, есть ли способ извлечь Type Lib (файл .tlb) из .exe с помощью командной строки?

1 Ответ

9 голосов
/ 26 ноября 2010

Tlbimp.exe может нормально обрабатывать ресурсы библиотеки типов внутри EXE-файла.Например:

C:\temp\temp>tlbimp c:\windows\system32\wiaacmgr.exe
Microsoft (R) .NET Framework Type Library to Assembly Converter 3.5.30729.1
Copyright (C) Microsoft Corporation.  All rights reserved.

Type library imported to WIAACMGRLib.dll

Автоматизация это довольно рискованно, кстати.Библиотека типов вполне эквивалентна ссылке на сборку.Если это изменилось, вы хотите знать об этом.Не только потому, что вам, возможно, придется изменить свой код взаимодействия и повторно протестировать его, DLL-ад также стучится в вашу дверь.

...