读取vb编译生成的dll中的CLSID值与ProgID值

转自百度安全验证

1.在vb中 引用TLBINF32.DLL类库,该文件可在c:\windows\system32下找到。

2.编写app

Private Sub Command1_Click()
 Dim TLIApp As Object
 Dim TLBInfo As TypeLibInfo 'Object
 Dim TypeInf As Object
 Set TLIApp = CreateObject("TLI.TLIApplication")
 Dim ProgID As String
 Dim CLSID As String
 ' 在这里给出dll文件名,注意它不支持长文件名
 Set TLBInfo = TLIApp.TypeLibInfoFromFile("c:\mydll.dll")
 'dll文件的guid,vb项目文件(vbp)引用的guid就是这个(TLBInfo.Guid),注册表中[TypeLib]也是这个 guid
 Debug.Print TLBInfo.Name
 Debug.Print TLBInfo.Guid 
 'dll类(CoClasses)的guid
 For Each TypeInf In TLBInfo.CoClasses
     ProgID = TypeInf.Name
     CLSID = TypeInf.Guid
     Debug.Print ProgID
     Debug.Print CLSID
 Next
 'dll接口(Interfaces)的guid
 For Each TypeInf In TLBInfo.Interfaces
    ProgID = TypeInf.Name
    CLSID = TypeInf.Guid
    Debug.Print ProgID
    Debug.Print CLSID
 Next
 '其他信息
 For Each l_types In TLBInfo.TypeInfos
    Debug.Print l_types.Name
 Next
 For Each l_constants In TLBInfo.Constants
    Debug.Print l_constants.Name
 Next
End Sub
'1.vbp例子文件
'Type=Exe
'Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\Windows\system32\stdole2.tlb#OLE Automation
'Reference=*\G{00020813-0000-0000-C000-000000000046}#1.2#0#D:\Program Files\Microsoft Office\Office12\EXCEL.EXE#Microsoft Excel 8.0 Object Library
'Reference=*\G{4AFFC9A0-5F99-101B-AF4E-00AA003F0F07}#9.0#0#D:\Program Files\Microsoft Office\Office12\MSACC.OLB#Microsoft Access 9.0 Object Library
'Reference=*\G{00025E01-0000-0000-C000-000000000046}#5.0#0#C:\Windows\system32\dao360.dll#Microsoft DAO 3.6 Object Library
'Reference=*\G{EF53050B-882E-4776-B643-EDA472E8E3F2}#2.7#0#C:\Program Files\Common Files\System\ado\msado27.tlb#Microsoft ActiveX Data Objects 2.7 Library
'Reference=*\G{4ACF03F8-3637-4DBF-B7C6-30EBAF083BB8}#1.0#0#C:\Windows\System32\mydll.dll#mydll

以上代码测试可用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值