IDirectPlayVoiceTest::CheckAudioSetup メソッド
IDirectPlayVoiceTest::CheckAudioSetup メソッド
指定されたデバイスに対してオーディオ セットアップ ウィザードを実行する。このウィザードは、デバイスにいくつかのテストを行い、全二重オーディオを利用できるかどうかを確認する。また、マイクが接続されており、キャプチャ デバイスで正しく動作するかどうかを確認する。
構文
HRESULT CheckAudioSetup(
const GUID *pguidPlaybackDevice,
const GUID *pguidCaptureDevice,
HWND hwndParent,
DWORD dwFlags
);
パラメータ
- pguidPlaybackDevice
[in] テストする再生デバイスを識別するグローバル一意識別子 (GUID) へのポインタ。このパラメータに NULL を渡した場合、Microsoft® DirectPlay® Voice は Microsoft DirectSound® に定義されているシステムのデフォルト音声再生デバイスをテストする。DirectSound のデフォルト GUID の 1 つを渡すこともできる。DSDEVID_DefaultPlayback
システムのデフォルト再生デバイス。DSDEVID_DefaultVoicePlayback
デフォルト音声再生デバイス。
- pguidCaptureDevice
[in] テストするキャプチャ デバイスを識別する GUID へのポインタ。このパラメータに NULL を渡した場合、DirectPlay Voice は DirectSound に定義されているシステムのデフォルトの音声キャプチャ デバイスをテストする。DirectSound のデフォルト GUID の 1 つを渡すこともできる。DSDEVID_DefaultCapture
デフォルトのシステム キャプチャ デバイス。また、デバイスの GUID パラメータに NULL ポインタを渡して、このデバイスを指定することもできる。DSDEVID_DefaultVoiceCapture
デフォルトの音声通信キャプチャ デバイス。一般的に、これはマイク付きの USB ヘッドセットなどのセカンダリ デバイスである。
- hwndParent
[in] このメソッドにより呼び出されるテスト ウィザードはモーダルである。ウィザードの親ウィンドウになるウィンドウが呼び出し元のアプリケーションにある場合、そのウィンドウへのハンドルをこのパラメータで渡す必要がある。呼び出し元アプリケーションにウィンドウがない場合、NULL を渡すことができる。DVFLAGS_QUERYONLY フラグを指定した場合、このパラメータは使われず、アプリケーションは NULL を渡すことができる。 - dwFlags
[in] フラグ。次のフラグを設定できる。DVFLAGS_QUERYONLY
オーディオ セットアップは実行されない。その代わり、メソッドはレジストリを調べ、デバイスがテスト済みかどうかを確認する。デバイスがテストされていない場合、メソッドは DVERR_RUNSETUP を返す。デバイスがテストされている場合、デバイスが全二重オーディオをサポートしていれば、メソッドは DV_FULLDUPLEX を返し、デバイスが全二重オーディオをサポートしていなければ、メソッドは DV_HALFDUPLEX を返す。DVFLAGS_ALLOWBACK
このフラグを渡すと、ウィザードのウェルカム ページで [Back] ボタンが有効になる。ユーザーがウェルカム ページの [Back] ボタンをクリックすると、ウィザードは終了し、IDirectPlayVoiceTest::CheckAudioSetup は DVERR_USERBACK を返す。
戻り値
成功した場合は DP_OK、DV_FULLDUPLEX、または DV_HALFDUPLEX を返し、失敗した場合は次のいずれかのエラー値を返す。
DVERR_INVALIDPARAM | メソッドに渡された 1 つ以上のパラメータが無効である。 |
DVERR_RUNSETUP | 指定されたオーディオ構成はテストされていない。IDirectPlayVoiceTest::CheckAudioSetup メソッドを呼び出す必要がある。 |
DVERR_INVALIDDEVICE | 指定されたデバイスが無効である。 |
注意
このメソッドはユーザー インターフェイス (UI) の要素を保持し、ダイアログ ボックスを表示する。DVFLAGS_QUERYONLY フラグを指定すると、テストは実際には実行されず、UI は起動しない。その代わり、レジストリを調べ、デバイスの以前のテスト結果を確認する。
ユーザーがウィザードを取り消すと、IDirectPlayVoiceTest::CheckAudioSetup は DVERR_USERCANCEL を返す。その後、呼び出し元アプリケーションは状況に応じて対処できる。たとえば、ゲーム オプション コントロール パネル アプリケーションの DirectPlay Voice 部分で、ユーザーが [Cancel] をクリックした場合、ウィザードが取り消されたため音声を使えないことを示すメッセージをダイアログ ボックスに表示する。
指定されたデバイスが存在しない場合、このメソッドは DVERR_INVALIDDEVICE を返す。また、デフォルトのデバイスを指定してもこのメソッドがこのエラーを返す場合は、システムにサウンド デバイスがない。