次の方法で共有


IDirectSound8::DuplicateSoundBuffer

オリジナル バッファのメモリを共有する新しいセカンダリ バッファを作成する。

構文

  HRESULT DuplicateSoundBuffer(
  LPDIRECTSOUNDBUFFER
   pDSBufferOriginal
  , 
  LPDIRECTSOUNDBUFFER *
   ppDSBufferDuplicate 

  );

パラメータ

pDSBufferOriginal

複製するバッファの IDirectSoundBuffer インターフェイスまたは IDirectSoundBuffer8 インターフェイスのアドレス。

ppDSBufferDuplicate

新しいバッファの IDirectSoundBuffer インターフェイス ポインタを受け取る変数のアドレス。

戻り値

成功した場合は DS_OK を返す。

失敗した場合は、次のいずれかのエラー値を返す。

リターン コード
DSERR_ALLOCATED
DSERR_INVALIDCALL
DSERR_INVALIDPARAM
DSERR_OUTOFMEMORY
DSERR_UNINITIALIZED

注意

このメソッドは、DSBCAPS_CTRLFX フラグを使って作成したバッファには無効である。

複製直後のバッファは、オリジナル バッファと同じパラメータを持つ。ただし、アプリケーションは各バッファのパラメータを個別に変更でき、各バッファは互いに影響を及ぼすことなく再生と停止を行うことができる。

バッファ メモリを参照する最後のオブジェクトが解放されると、バッファ メモリは解放される。

要件

**  ヘッダー:**dsound.h で宣言。

参照