3.8.4 Message Processing Events and Sequencing Rules

 To retrieve a reference to an ITypeInfo server, a client MUST do one of the following:

A client MUST call ITypeInfo::GetTypeAttr (section 3.7.4.1) to retrieve the essential characteristics of the type. To iterate over the data and method members of the type, the client MUST use the data retrieved in TYPEATTR and then call ITypeInfo::GetVarDesc (section 3.7.4.4) and ITypeInfo::GetFuncDesc (section 3.7.4.3).

To discover inheritance relationships for interfaces or the set of nonsource and source interfaces supported by a coclass, a client MUST enumerate the referenced types of an ITypeInfo server using ITypeInfo::GetRefTypeOfImplType (section 3.7.4.6) and ITypeInfo::GetRefTypeInfo (section 3.7.4.10).

To retrieve string information related to the ITypeInfo server, the client MUST call ITypeInfo::GetDocumentation (section 3.7.4.8) or ITypeInfo::GetNames (section 3.7.4.5).