文章关键字 ‘TLI.TLIApplication’

TLI.TLIApplication,被遗忘的COM组件

2010年12月5日,星期日

TLI.TLIApplication是一个能获取COM组件Type Library Information(类型库信息)的COM组件。曾经一直很好奇VbsEdit的代码自动补全是怎么实现的,现在看来,大约的确用的就是这个COM。

比如我想知道scrrun.dll(提供fso对象的dll)这个COM组件提供了哪些接口,可以用下面的代码:

'By Demon
'http://demon.tw
Set tli = CreateObject("TLI.TLIApplication")
Set Info = tli.TypeLibInfoFromFile("scrrun.dll")
For Each Interface In Info.Interfaces
    WScript.Echo Interface.Name 
Next

或者我忘记了fso对象有哪些属性和方法,而又没有参考文档,可以用下面的代码:

'By Demon
'http://demon.tw
Dim fso
Set fso = CreateObject("scripting.filesystemobject")
Set tli = CreateObject("TLI.TLIApplication")
Set Info = tli.ClassInfoFromObject(fso)
For Each Member In Info.DefaultInterface.Members
    WScript.Echo Member.Name 
Next

时间和篇幅有限,举的例子比较简单,更详细的请查阅文档(参考链接2为下载地址)。

参考链接:

  1. RunTime COM Object Inspection
  2. FILE: Tlbinf32.exe : Help Files for Tlbinf32.dll
  3. Visual Basic: Inspect COM Components Using the TypeLib Information Object Library