次の方法で共有


IKsPropertySet::Get

Get メソッドは、プロパティ セット GUID およびプロパティ ID で識別されるプロパティを取得する。

構文

  HRESULT Get(
  REFGUID guidPropSet,
  DWORD dwPropID,
  LPVOID pInstanceData,
  DWORD cbInstanceData,
  LPVOID pPropData,
  DWORD cbPropData,
  DWORD *pcbReturned
);

パラメータ

guidPropSet

[in] プロパティ セットの GUID を指定する。

dwPropID

[in] プロパティ セット内でのプロパティの識別子を指定する。

pInstanceData

[in] プロパティに対応するインスタンス データを保持するバイトの配列へのポインタ。

cbInstanceData

[in] pInstanceData で指定される配列のサイズを指定する。

pPropData

[out] プロパティ データを受け取るバイトの配列へのポインタ。

cbPropData

[in] pPropData で指定される配列のサイズを指定する。

pcbReturned

[out] メソッドが pPropData 配列によって返したバイト数を受け取る変数へのポインタ。

戻り値

HRESULT 値を返す。可能な値は次のとおりである。

説明
S_OK 成功。
E_PROP_SET_UNSUPPORTED プロパティ セットがサポートされていない。
E_PROP_ID_UNSUPPORTED 指定されたプロパティ セットでそのプロパティ ID がサポートされていない。

注意

dsound.h ヘッダ ファイルにはこの名前で別のインターフェイスが存在している。これらのインターフェイスどうしに互換性はない。WDM ドライバとユーザー モード コンポーネントの間でプロパティを渡す場合は IKsControl インターフェイス (詳細は DirectShow DDK のドキュメントを参照) を使用することをお勧めする。

プロパティを取得するには、このメソッドがデータを設定するバッファを割り当てること。必要なバッファ サイズを判断するには、pPropData に NULL、cbPropData に 0 を指定する。必要なバッファ サイズが pcbReturned に返される。

サンプル コード

次の例では、AMPROPERTY_PIN_CATEGORY プロパティを取得して、ピンにそのピン カテゴリを照会している (「ピン プロパティ セット」を参照すること)。

IKsPropertySet *pKs;
GUID guid;
DWORD cbBytes;
/* IksProperty セットのピンを照会する (示していない)。*/
pKs->Get(AMPROPSETID_Pin, AMPROPERTY_PIN_CATEGORY, NULL, 0, &guid, 
    sizeof(GUID), &cbBytes);
pKs->Release();

参照