IContactProperties::GetString Method
Retrieves the string value at a specified property into a caller-allocated buffer.
Syntax
HRESULT GetString( LPCWSTR pszPropertyName, DWORD dwFlags, LPWSTR pszValue, DWORD *cchValue, DWORD *pdwcchPropertyValueRequired );
Parameters
- pszPropertyName
[in] Specifies the property to retrieve.- dwFlags
[in] Must be CGD_DEFAULT.- pszValue
[in, out] Specifies user-allocated buffer to store the property.- cchValue
[in] Specifies allocated buffer size in characters.- pdwcchPropertyValueRequired
[in, out] On failure, contains the required size for pszValue.
Return Value
Returns one of the following values:
S_OK pszValue contains the null-terminated value. S_FALSE No data for this value. Either the property has been present in the past but its value has been removed or the property is a container of other properties (toplevel/secondlevel[3]). The buffer at pszValue has been zero'ed. ERROR_PATH_NOT_FOUND No data found for this property name. ERROR_INSUFFICIENT_BUFFER pszValue was not large enough to store the value. The required buffer size is stored in *pdwcchPropertyValueRequired.
Remarks
To retrieve a single level property, set pszPropertyName to the property name.
To retrieve a value from a multi-value (hierarchical) property, include the desired index as part of pszPropertyName in the form: toplevel/secondlevel[1]/thirdlevel. NOTE: the first element of a set is index 1, so index [0] is invalid. The following example retrieves the Title of the fourth Name property of a contact.
L"NameCollection/Name[4]/Title"