IKsPropertySet::Get method
The Get method retrieves a property identified by a property set GUID and a property ID.
Syntax
HRESULT Get( [in] REFGUID guidPropSet, [in] DWORD dwPropID, [in] LPVOID pInstanceData, [in] DWORD cbInstanceData, [out] LPVOID pPropData, [in] DWORD cbPropData, [out] DWORD *pcbReturned );
Parameters
- guidPropSet [in]
-
The GUID of the property set .
- dwPropID [in]
-
The identifier of the property within the property set.
- pInstanceData [in]
-
A pointer to an array of bytes that contains instance data for the property.
- cbInstanceData [in]
-
The size of the array given in pInstanceData, in bytes.
- pPropData [out]
-
A pointer to an array of bytes that receives the property data.
- cbPropData [in]
-
The size of the array given in pPropData, in bytes.
- pcbReturned [out]
-
Receives the number of bytes the method copies to the pPropData array.
Return value
Returns an HRESULT value. Possible values include the following.
| Return code | Description |
|---|---|
|
Success. |
|
The property set is not supported. |
|
The property ID is not supported for the specified property set. |
Remarks
Note Another interface by this name exists in the dsound.h header file. The two interfaces are not compatible. The IKsControl interface, documented in the DirectShow DDK, is now the recommended interface for passing property sets between WDM drivers and user mode components.
To retrieve a property, allocate a buffer which this method will then fill in. To determine the necessary buffer size, specify NULL for pPropData and zero (0) for cbPropData. This method returns the necessary buffer size in pcbReturned.
You must include Ks.h before Ksproxy.h.
Examples
The following example queries a pin for its pin category, by retrieving the AMPROPERTY_PIN_CATEGORY property. (See Pin Property Set.)
HRESULT GetPinCategory(IPin *pPin, GUID *pPinCategory)
{
IKsPropertySet *pKs = NULL;
HRESULT hr = pPin->QueryInterface(IID_PPV_ARGS(&pKs));
if (FAILED(hr))
{
return hr;
}
// Try to retrieve the pin category.
DWORD cbReturned = 0;
hr = pKs->Get(AMPROPSETID_Pin, AMPROPERTY_PIN_CATEGORY, NULL, 0,
pPinCategory, sizeof(GUID), &cbReturned);
// If this succeeded, pPinCategory now contains the category GUID.
SafeRelease(&pKs);
return hr;
}
Requirements
|
Minimum supported client | Windows 2000 Professional [desktop apps only] |
|---|---|
|
Minimum supported server | Windows 2000 Server [desktop apps only] |
|
Header |
|
|
Library |
|
See also
Send comments about this topic to Microsoft
Build date: 11/21/2012
