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. VBS关键字和保留字
  2. VB6拾遗:数组的内部实现
  3. 用VBS判断操作系统是32位(x86)还是64位(x64)
  4. BAT批处理编辑器BatEdit
  5. MySQL快速插入大量数据——使用LOAD DATA语句

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

  1. PopEye说道:

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

留下回复