GetHiddenClasses - Retrieve all the hidden classes in a type library
' Return a collection with all hidden types of a type library
'
' VB's Object Browser hides some types in a type library:
' you can show these types by right clicking on the Object Browser and
' activating the "Show hidden members" option. This option, however,
' shows only types labelled as "hidden", but still hides those whose name
' begins with the underscore character (_).
' Be sure that "TypeLib Information" type library (TlbInf32.tlb)
' is referenced in your VB project.
Function GetHiddenClasses(ByVal TypeLibFile As String) As Collection
Dim TLI As New TLIApplication
Dim TypeLibrary As TypeLibInfo
Dim TypeInfo As TypeInfo
Dim FileName As String
' raises an error if unable to open the type library
' (e.g. file not found or not a TLB)
Set TypeLibrary = TLI.TypeLibInfoFromFile(TypeLibFile)
' prepare the result
Set GetHiddenClasses = New Collection
' fill the return collection with hidden type names
For Each TypeInfo In TypeLibrary.TypeInfos
' if the type is hidden, add to the result collection
If TypeInfo.AttributeMask And TYPEFLAG_FHIDDEN Then
GetHiddenClasses.Add TypeInfo.Name
End If
Next
End Function