IPropertySetter::GetProps 方法
[與此頁面 相關的功能 DirectShow是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式碼,以使用新的 API。]
注意
[已被取代。 此 API 可能會從未來的 Windows 版本中移除。]
方法會 GetProps
擷取這個 物件上設定的屬性,以及其對應的值。
語法
HRESULT GetProps(
[out] LONG *pcParams,
[out] DEXTER_PARAM **paParam,
[out] DEXTER_VALUE **paValue
);
參數
-
pcParams [out]
-
接收 paParam中傳回的結構數目。
-
paParam [out]
-
DEXTER_PARAM結構陣列的指標位址。
-
paValue [out]
-
DEXTER_VALUE結構陣列的指標位址。
傳回值
如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。
備註
針對 paParam中傳回的每個屬性, nValues 成員會指出與 屬性相關聯的 DEXTER_VALUE 結構數目。 每個屬性的遞增時間順序都會傳回配對。
當您使用傳回的結構完成時,請呼叫 IPropertySetter::FreeProps 以釋放此方法所配置的資源。
注意
標頭檔 Qedit.h 與 7 版之後的 Direct3D 標頭不相容。
注意
若要取得 Qedit.h,請下載適用于 Windows Vista 的 Microsoft Windows SDK Update 和 .NET Framework 3.0。 Windows 7 和 .NET Framework 3.5 Service Pack 1 Microsoft Windows SDK中無法使用 Qedit.h。
範例
下列程式碼範例示範如何逐一查看屬性 setter 實例上的所有值:
IPropertySetter *pSetter = NULL;
// Get a valid IPropertySetter pointer (not shown).
DEXTER_PARAM *pParam;
DEXTER_VALUE *pValue;
LONG count;
hr = pSetter->GetProps(&count, &pParam, &pValue);
LONG num = 0;
for (LONG i = 0; i < count; i++)
{
for (LONG j = 0; j < pParam[i].nValues; j++)
{
// pValue[num] is the next value in the sequence for pParam[i]
}
num += pParam[i].nValues;
}
規格需求
需求 | 值 |
---|---|
標頭 |
|
程式庫 |
|
另請參閱