ITypeInfo::GetVarDesc

HRESULT GetVarDesc( 
  unsigned int  index,          
  VARDESC FAR* FAR*  ppVarDesc  
);
 

Retrieves a VARDESC structure that describes the specified variable.

Parameters

index
Index of the variable whose description is to be returned. The index should be in the range of 0 to 1 less than the number of variables in this type.
ppVarDesc
On return, points to a pointer to a VARDESC that describes the specified variable.

Return Value

The return value obtained from the returned HRESULT is one of the following:

Return value Meaning
S_OK Success.
E_OUTOFMEMORY Out of memory.
E_INVALIDARG One or more of the arguments is invalid.
TYPE_E_IOERROR The function could not read from the file.
TYPE_E_INVDATAREAD Invalid data.
TYPE_E_UNSUPFORMAT The type library has an older format.
TYPE_E_INVALIDSTATE The type library could not be opened.

Comments

To free the VARDESC structure, use ReleaseVarDesc.

Example

CHECKRESULT(ptypeinfo->GetVarDesc(i, &pvardesc));
idMember = pvardesc->memid;
CHECKRESULT(ptypeinfo->GetDocumentation(idMember, &bstrName, NULL, NULL, 
        NULL));
ptypeinfo->ReleaseVarDesc(pvardesc);