Stuart McLachlan
stuart at lexacorp.com.pg
Sat Nov 5 17:10:53 CST 2005
On 5 Nov 2005 at 14:16, John Bartow wrote: > Marty, > Tried that. Don't get much at all. > > Is it possible to interate through the an Active-X object model and pull out > all of its events, properties and methods, constants, etc. into a report or > a text file? My gut feeling is yes since the Object Browser display all of > it. One of the tools that comes with PowerBasic is PBrow: <quote> The PowerBASIC COM Browser is an application that exposes the Interfaces, Methods and Properties of COM Objects, as described by type-library files. The PowerBASIC COM Browser serves a dual purpose - to export an Interface Structure of a COM Object for early-binding purposes in your PowerBASIC code, and to provide syntax reference and context-help on the Interface members exposed by a COM Object. .... The PowerBASIC COM Browser cannot open type-library or Object files that do not have at least one Interface that has a ProgID, indicating they support the Dispatch interface or are Dual-interface Objects. Without a ProgID, a COM Object will not support the IDispatch (dispatch) Interface. COM Objects of this variety often expose "direct" interfaces, and may be ActiveX Controls rather than COM servers. Objects of this type are not compatible with PowerBASIC (and are often not compatible with Visual Basic too). </quote> Buy PBrow for $199 and you will get PowerBASIC thrown in for free <g> Here's a short extract from the file I just created for DAO: ------------------------------------------------------------ ' Library Name: Microsoft DAO 3.6 Object Library 5.0 ' Library File: C:\PROGRA~1\COMMON~1\MICROS~1\DAO360.DLL ' ------------------------------------------------------------ ' Version Info: ' ------------- ' Company Name: Microsoft Corporation ' File Description: Microsoft DAO 3.6 Object Library ' File Version: 03.60.2927.12 ' Internal Name: DAO360 ' Legal Copyright: Copyright © Microsoft Corp. 1993-1997 ' Original Filename: DAO360.DLL ' Product Name: Microsoft® Jet ' Product Version: 03.60.2927.12 ' ------------------------------------------------------------ ...... 'Enumeration DataTypeEnum %dbBoolean = &H00000001 %dbByte = &H00000002 %dbInteger = &H00000003 %dbLong = &H00000004 %dbCurrency = &H00000005 %dbSingle = &H00000006 %dbDouble = &H00000007 %dbDate = &H00000008 %dbBinary = &H00000009 %dbText = &H0000000A %dbLongBinary = &H0000000B %dbMemo = &H0000000C %dbGUID = &H0000000F %dbBigInt = &H00000010 %dbVarBinary = &H00000011 %dbChar = &H00000012 %dbNumeric = &H00000013 %dbDecimal = &H00000014 %dbFloat = &H00000015 %dbTime = &H00000016 %dbTimeStamp = &H00000017 .... Interface Dispatch DAOTableDefs Member Get Count<&H60020000>() As Integer Member Call Refresh<&H60020002>() Member Call Append<&H60030000>(in Object As Variant<&H00000000>) Member Call Delete<&H60030001>(in Name As String<&H00000000>) Member Get Item<&H00000000>(in Item As Variant<&H00000000>) As DAOTableDef End Interface -- Stuart