IDirectPlayVoiceClient::Initialize メソッド

IDirectPlayVoiceClient::Initialize メソッド

DirectPlayVoiceClient オブジェクトを Microsoft® DirectPlay® オブジェクトと関連付けて初期化する。また、このメソッドはメッセージ ハンドラを DirectPlayVoiceClient オブジェクトに登録する。

構文

HRESULT Initialize(      
    LPUNKNOWN pVoid,
    PDVMESSAGEHANDLER pMessageHandler,
    PVOID pUserContext,
    PDWORD pdwMessageMask,
    DWORD dwMessageMaskElements
);

パラメータ

  • pVoid
    [in] この DirectPlayVoiceClient オブジェクトが使う DirectPlay オブジェクトに対する IUnknown インターフェイスへのポインタ。
  • pMessageHandler
    [in] 処理する DirectPlayVoiceClient メッセージがある場合に呼び出されるユーザー定義のコールバック関数。DirectPlayVoiceClient オブジェクト内のスレッドがコールバック関数を呼び出すため、プロセスのメイン スレッドのコンテキストにはコールバック関数は呼び出されない。
  • pUserContext
    [in] 関数が呼び出されるたびにコールバック関数に渡される、アプリケーションにより定義された構造体へのポインタ。
  • pdwMessageMask
    [in] DirectPlay Voice がユーザーのコールバック関数に送信するメッセージ識別子を保持する DWORD 値の配列。メッセージ識別子をこの配列に指定しない場合、メッセージは送信されない。それぞれのメッセージ識別子は一度だけ配列に現れるようにすること。また、有効なメッセージ識別子だけが許可される。たとえば、DVMSGID_CONNECTRESULT はサーバーのインターフェイスには無効だが、クライアントのインターフェイスに対しては有効である。すべてのメッセージを有効にするには、この値に NULL を指定する。
  • dwMessageMaskElements
    [in] pdwMessageMask パラメータの要素数を指定する DWORD 値。pdwMessageMask が NULL である場合、0 に設定しておく。

戻り値

成功した場合は DV_OK を返す。または、次のいずれかのエラー値を返す。

DVERR_ALREADYINITIALIZED オブジェクトは既に初期化されている。
DVERR_GENERIC 定義されていないエラー条件が発生した。
DVERR_INVALIDPARAM メソッドに渡された 1 つ以上のパラメータが無効である。
DVERR_INVALIDPOINTER 指定されたポインタが無効である。
DVERR_NOCALLBACK コールバック関数が指定されていないため、この処理は実行できない。
DVERR_TRANSPORTNOTINIT 指定されたトランスポートはまだ初期化されていない。

注意

IDirectPlayVoiceClient::Connect メソッドを呼び出す前に、このメソッドの呼び出しが成功している必要がある。

IDirectPlayVoiceClient::SetNotifyMask を呼び出して、ボイス セッションの進行中に通知マスクを変更できる。