TLI.TLIApplication,被遗忘的COM组件

标签: , , ,

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

随机文章:

  1. PHP读取纯真IP数据库QQWry.dat
  2. 批处理技术内幕:预处理
  3. WriteFile,WriteConsole和_tprintf的一些差别
  4. Python调用COM组件
  5. Asc/AscB/AscW和Chr/ChrB/ChrW函数之间的区别

2 条评论 发表在“TLI.TLIApplication,被遗忘的COM组件”上

  1. PopEye说道:

    MSDN说这个组件在Visual Studio或Visual Basic中才有,基本OS系统是没有的。我从VB6.0里把它拷贝出来,注册后再运行上面的代码就OK了。

留下回复