Здравствуйте, ToliK, Вы писали:
TK>Не подскажет ли кто есть ли метод получения списка полей и методов стандартных объектов.
TK>Окно WATCH конечно дает эту инфу, но хотелось бы получить программно ...
Програмно — нет. (вернее я две недели на эту тему ломал голову и не нашел)
А если тебе просто список нужен — по F2 открывается Object Browser
С уважением, Дмитрий.
Re: Необходимо получить список полей и методов объекта
Private Sub ListProps(comServer As Object)
Dim IFaceInfo As TLI.InterfaceInfo
Dim mem As TLI.MemberInfo
Set IFaceInfo = TLI.InterfaceInfoFromObject(comServer)
On Error Resume Next
For Each mem In IFaceInfo.Members
If mem.InvokeKind = INVOKE_PROPERTYGET Then
Debug.Print"Property " & mem.Name & " = " & _
TLI.InvokeHook(comServer, mem.MemberId, INVOKE_PROPERTYGET)
End If
Next
End Sub
можно просмотреть все публичные свойства и методы
SCS
Re[2]: Необходимо получить список полей и методов объекта
Спасибо... не на самом деле, спасибо...
Ммм.. только одна загвоздка есть, у меня эта проблема в VBA, Excel
SCS>Здравствуйте, ToliK, Вы писали:
TK>>Окно WATCH конечно дает эту инфу, но хотелось бы получить программно ...
SCS>по моему, TlbInf32.dll — это есть то, что тебе надо. входит в состав VS 6 Ent. Edition. Help можно скачать с сайта MS http://support.microsoft.com/default.aspx?scid=KB;en-us;q224331 SCS>пример использования: SCS>
SCS>Private Sub ListProps(comServer As Object)
SCS>Dim IFaceInfo As TLI.InterfaceInfo
SCS>Dim mem As TLI.MemberInfo
SCS>Set IFaceInfo = TLI.InterfaceInfoFromObject(comServer)
SCS>On Error Resume Next
SCS>
SCS> For Each mem In IFaceInfo.Members
SCS> If mem.InvokeKind = INVOKE_PROPERTYGET Then
SCS> Debug.Print"Property " & mem.Name & " = " & _
SCS> TLI.InvokeHook(comServer, mem.MemberId, INVOKE_PROPERTYGET)
SCS> End If
SCS> Next
SCS>End Sub
SCS>
SCS>можно просмотреть все публичные свойства и методы SCS>
Желаю успеха.
ToliK
Re[3]: Необходимо получить список полей и методов объекта
Здравствуйте, ToliK, Вы писали:
TK>Добрый день.
TK>Не подскажет ли кто есть ли метод получения списка полей и методов стандартных объектов.
Вариантов много :
1. (атака в лоб) использование TlbInf32.dll
2 на мой взгляд более удачный
пользовать OLELIB.TLB — Edanmo's OLE interfaces & functions http://www.domaindlx.com/e_morcillo/
выбор за тобой
... Хорошо уметь читать между строк. Это иногда
приносит большую пользу