2009-04-22 1 views
0

Я хочу создать сборку interop из библиотеки типов, используя инструмент tlbimp.exe, который включен в .NET SDK.Как я могу заставить tlbimp автоматически не создавать сборки для ссылочных типов?

Моя проблема заключается в том, что библиотека типа источника ссылается на тип в другой библиотеке, которую у меня нет. Как я могу заставить tlbimp не автоматически генерировать сборки для ссылочных типов?

я получаю следующее сообщение об ошибке:

 
Resolving reference to type library 'GridEX20'. 
Auto importing 'GridEX20' to 'C:\tmp\GridEX20.dll'. 
TlbImp : error TI0000 : System.Runtime.InteropServices.COMException - Error loading type library/DLL. (Exception from HRESULT: 0x80029C4A (TYPE_E_CANTLOADLIBRARY)) 

Использование Process Monitor я пришел к выводу, что библиотека GridEX20 найдена, но она ссылается на другую библиотеку, которая не найден и TLBIMP выдает сообщение об ошибке, когда эта библиотека не может быть найденный.

ответ

0

Вы можете попробовать параметр/strictref, но я не думаю, что это вам поможет.

Я предлагаю вам изучить GridEX20.dll с помощью Walker Dependency (для VS2005 он был найден в C: \ Program Files \ Microsoft Visual Studio 8 \ Common7 \ Tools \ Bin, но я не думаю, что он уже отправлен - вы можете найти версию here).

Это должно сказать вам, от каких сборок зависит dll - что, по крайней мере, подтвердит правильность вашей исходной гипотезы.