Retrieves the user-type name of an object for display in user-interface elements such as menus, list boxes, and dialog boxes.
HRESULT GetUserType( DWORD dwFormOfType, LPOLESTR *pszUserType );
The form of the user-type name to be presented to users. Possible values are obtained from the USERCLASSTYPE enumeration.
Address of LPOLESTR pointer variable that receives a pointer to the user type string. The caller must free pszUserType using the current IMalloc instance. If an error occurs, the implementation must set pszUserType to NULL.
This method returns S_OK on success. Other possible return values include the following.
||Delegate to the default handler's implementation using the registry to provide the requested information.|
Containers call IOleObject::GetUserType in order to represent embedded objects in list boxes, menus, and dialog boxes by their normal, user-recognizable names. Examples include "Word Document," "Excel Chart," and "Paintbrush Object." The information returned by IOleObject::GetUserType is the user-readable equivalent of the binary class identifier returned by IOleObject::GetUserClassID.IOleObject::GetUserClassID) and the dwFormOfType parameter together as a key into the registry. If an entry is found that matches the key exactly, then the user type specified by that entry is returned. If only the CLSID part of the key matches, then the lowest-numbered entry available (usually the full name) is used. If the CLSID is not found, or there are no user types registered for the class, the user type currently found in the object's storage is used.
You should not cache the string returned from IOleObject::GetUserType. Instead, call this method each and every time the string is needed. This guarantees correct results when the embedded object is being converted from one type into another without the caller's knowledge. Calling this method is inexpensive because the default handler implements it using the registry.
You can call the OLE helper function OleRegGetUserType to return the appropriate user type.
|Minimum supported client||Windows 2000 Professional [desktop apps only]|
|Minimum supported server||Windows 2000 Server [desktop apps only]|