如何从命令行上的COM exe中提取TypeLib

Dan*_*all 5 com typelib tlbimp

我最近需要生产一个互操作组件.经过一些谷歌搜索我发现tlbimp.exe.我的下一个问题是我的COM库没有附带.tlb文件.进一步的谷歌搜索显示,类型lib通常作为exe/dll中的资源包含在内.果然,打开VS2010中的exe显示它是lib类型,稍后右键单击我有一个tlb文件可供使用tlbimp.真棒.

然而,这不是一个非常好的过程.我将来是否需要这样做,有没有办法使用命令行从.exe中提取Type Lib(.tlb文件)?

Han*_*ant 9

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
Run Code Online (Sandbox Code Playgroud)

自动化这是相当危险的顺便说一句.类型库与程序集引用完全等效.如果它改变了你想知道它.DLL Hell不仅因为你可能不得不修改你的互操作代码并重新测试它,而且还在敲你的门.