Microsoft DirectX 8.0 (C++)

IDirectSoundBuffer8::Unlock

サウンド バッファをアンロックする。

HRESULT Unlock(
  LPVOID pvAudioPtr1, 
  DWORD dwAudioBytes1, 
  LPVOID pvAudioPtr2, 
  DWORD dwAudioBytes2 
);

パラメータ

pvAudioPtr1
IDirectSoundBuffer8::Lock メソッドの ppvAudioPtr1 パラメータで取得した値のアドレス。
dwAudioBytes1
バッファの pvAudioPtr1 で表される位置に書き込むバイト数を指定する値。「注意」を参照すること。
pvAudioPtr2
IDirectSoundBuffer8::Lock メソッドの ppvAudioPtr2 パラメータで取得した値のアドレス。
dwAudioBytes2
バッファの pvAudioPtr2 で表される位置に書き込むバイト数を指定する値。「注意」を参照すること。

戻り値

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

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

DSERR_INVALIDCALL
DSERR_INVALIDPARAM
DSERR_PRIOLEVELNEEDED

注意

アプリケーションは、IDirectSoundBuffer8::Lock メソッドで返されるポインタ pvAudioPtr1 および pvAudioPtr2 の両方を渡して、IDirectSoundBuffer8::LockIDirectSoundBuffer8::Unlock の対を正しく指定しなければならない。たとえ 2 番目のポインタに何も書き込まれていない場合でも、2 番目のポインタは必要である。

dwAudioBytes1 および dwAudioBytes2 の値は、バッファの各部分に実際に書き込まれるバイト数を指定しなければならない。ロックのサイズより小さくなる場合がある。DirectSound はこれらの値を使用して、デバイスにコミットするデータ量を決定する。

動作環境

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

参照

IDirectSoundBuffer8::GetCurrentPositionIDirectSoundBuffer8::Lock