Platform SDK: DirectX |
IDirectMusic::SetDirectSound メソッドは、ウェーブ出力用に、DirectMusic を DirectSound オブジェクトに接続する。
HRESULT SetDirectSound( LPDIRECTSOUND pDirectSound, HWND hWnd );
pDirectSound が有効なインターフェイスの場合、このパラメータは無視される。IDirectSound::SetCooperativeLevel の呼び出しでは、アプリケーションが有効なウィンドウ ハンドルを提供する必要があるためである。
成功すれば S_OK を返す。
失敗すれば DMUS_E_DSOUND_ALREADY_SET を返す。
指定した DirectSound オブジェクトは、すべてのポート上でオーディオをレンダリングする際に使われるオブジェクトである。このデフォルト値は、IDirectMusicPort::SetDirectSound メソッドを使って上書きできる。
IDirectMusic::SetDirectSound メソッドを呼び出すたびに、既存の DirectSound オブジェクトは解放される。
pDirectSound が NULL の場合、DirectSound を使うポートがアクティブ化されるまで新しい DirectSound オブジェクトは作成されない。DirectSound オブジェクトは、それを使用している最後のポートが非アクティブ化されると自動的に解放される。
DirectSound オブジェクトを自分で作成した場合は、すべてのポートを非アクティブ化した後で、このメソッドの pDirectSound パラメータに NULL を設定して呼び出すことによって解放できる (アクティブなポート対して SetDirectSound を呼び出すことは誤りである)。
hWnd パラメータに NULL を渡して、現在の前面ウィンドウ ハンドルを DirectSound に渡すことができる。ただし、初期化中にアプリケーション ウィンドウが前面にあると想定しないこと。通常、最上レベルのアプリケーション ウィンドウ ハンドルは、DirectMusic、DirectSound、および DirectDraw に渡さなければならない。「IDirectSound::SetCooperativeLevel」の「注意」を参照すること。
Windows NT/2000 : Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
ヘッダー : dmusicc.h で宣言。