共用方式為


IPropertySetter::GetProps 方法

[與此頁面 相關的功能 DirectShow是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 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;
}

規格需求

需求
標頭
Qedit.h
程式庫
Strmiids.lib

另請參閱

IPropertySetter 介面

錯誤和成功碼