IMFAttributes::GetAllocatedString Method

Gets a wide-character string associated with a key. This method allocates the memory for the string.

Syntax

public:
HRESULT GetAllocatedString(
         REFGUID guidKey,
         pcchLength + 1))LPWSTR *ppwszValue,
         UINT32 *pcchLength
)  

Parameters

guidKey
Type: REFGUID 

[in] A GUID that identifies which value to retrieve. The attribute type must be MF_ATTRIBUTE_STRING.

ppwszValue
Type: pcchLength + 1))LPWSTR *

If the key is found and the value is a string type, this parameter receives a copy of the string. The caller must free the memory for the string by calling CoTaskMemFree.

pcchLength
Type: UINT32 *

[out] Receives the number of characters in the string, excluding the terminating NULL character. This parameter must not be NULL.

Return value

Type: HRESULT 

The method returns an HRESULT. Possible values include, but are not limited to, those in the following table.

Return codes
Return code Description
S_OK The method succeeded.
MF_E_ATTRIBUTENOTFOUND The specified key was not found.
MF_E_INVALIDTYPE The attribute value is not a string.

Refer to Media Foundation return codes.

Remarks

To copy a string value into a caller-allocated buffer, use the IMFAttributes::GetString method.

Note

An earlier version of the documentation incorrectly stated that the pcchLength parameter can be NULL. Setting this parameter to NULL might succeed in some cases, but is not guaranteed. The caller must pass a non-NULL pointer for this parameter.

Requirements

Header: Declared in mfobjects.h (include mfidl.h).

Library: Use Mfuuid.lib.