IKsPropertySet::Get 方法
[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayer、 IMFMediaEngine 和 媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
Get 方法检索由属性集 GUID 和属性 ID 标识的属性。
语法
HRESULT Get(
[in] REFGUID guidPropSet,
[in] DWORD dwPropID,
[in] LPVOID pInstanceData,
[in] DWORD cbInstanceData,
[out] LPVOID pPropData,
[in] DWORD cbPropData,
[out] DWORD *pcbReturned
);
参数
-
guidPropSet [in]
-
属性的 GUID 设置 。
-
dwPropID [in]
-
属性集中属性的标识符。
-
pInstanceData [in]
-
指向包含 属性的实例数据的字节数组的指针。
-
cbInstanceData [in]
-
pInstanceData 中给定的数组的大小(以字节为单位)。
-
pPropData [out]
-
指向接收属性数据的字节数组的指针。
-
cbPropData [in]
-
pPropData 中给定的数组的大小(以字节为单位)。
-
2013 年 [out]
-
接收方法复制到 pPropData 数组的字节数。
返回值
返回 HRESULT 值。 可能的值包括以下值。
返回代码 | 说明 |
---|---|
|
成功。 |
|
不支持属性集。 |
|
指定的属性集不支持属性 ID。 |
备注
备注
dsound.h 头文件中存在另一个此名称的接口。 这两个接口不兼容。 DirectShow DDK 中记录的 IKsControl 接口现在是在 WDM 驱动程序和用户模式组件之间传递属性集的推荐接口。
若要检索属性,请分配一个缓冲区,然后此方法将填充该缓冲区。 若要确定必要的缓冲区大小,请为 pPropData 指定 NULL,为 cbPropData 指定零 (0) 。 此方法返回所需的缓冲区大小(以回转)。
必须在 Ksproxy.h 之前包括 Ks.h。
示例
以下示例通过检索 AMPROPERTY_PIN_CATEGORY 属性来查询固定类别的 固定 。 (请参阅 Pin 属性 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;
}
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 |
Windows 2000 Server [仅限桌面应用] |
标头 |
|
库 |
|
另请参阅