Platform SDK: DirectX

戻り値

エラーは負の値で表され、それらを組み合わせることはできない。次の表に、IDirectPlay4 インターフェイスと IDirectPlayLobby3 インターフェイスのすべてのメソッドにより返される値を示す。各メソッドにより返されるエラー値については、個別のメソッドの説明を参照すること。

DirectPlay サンプルの多くには、HRESULT 値を DirectPlay エラーの文字列名に変換する GetDirectPlayErrStr 関数が含まれている。開発者は、診断トレースやエラー レポート用に各自のアプリケーションにこのコードをコピーできる。

CLASS_E_NOAGGREGATION
DirectPlayCreateDirectPlayLobbyCreate、または IDirectPlayLobby3::ConnectpUnkOuter パラメータに、NULL 以外の値が渡された。
DP_OK
要求は正常に終了した。
DPERR_ABORTED
操作は、完了前に取り消された。
DPERR_ACCESSDENIED
セッションがいっぱいであるか、または不正なパスワードが指定された。
DPERR_ACTIVEPLAYERS
既存のアクティブなプレーヤーが存在していて、要求された操作が実行できなかった。
DPERR_ALREADYINITIALIZED
このオブジェクトは既に初期化されている。
DPERR_APPNOTSTARTED
アプリケーションがまだ起動されていない。
DPERR_AUTHENTICATIONFAILED
指定されたパスワードまたは証明書が認証できなかった。
DPERR_BUFFERTOOLARGE
データ バッファが大きすぎて保存できない。
DPERR_BUFFERTOOSMALL
指定されたバッファが、要求されたデータを格納するのに十分な大きさでない。
DPERR_BUSY
伝送媒体がビジー状態であるため、メッセージを送信できない。
DPERR_CANCELFAILED
おそらくメッセージがグループのメンバに既に送信されているグループ メッセージであるために、取り消すことができなかった。
DPERR_CANCELLED
操作が取り消された。
DPERR_CANNOTCREATESERVER
新しいセッションでサーバーを作成できない。
DPERR_CANTADDPLAYER
プレーヤーをセッションに追加できない。
DPERR_CANTCREATEGROUP
新しいグループを作成できない。
DPERR_CANTCREATEPLAYER
新しいプレーヤーを作成できない。
DPERR_CANTCREATEPROCESS
アプリケーションを起動できない。
DPERR_CANTCREATESESSION
新しいセッションを作成できない。
DPERR_CANTLOADCAPI
証明書が指定されず、また暗号化サービスで使用する CryptoAPI パッケージ (CAPI) をロードできない。
DPERR_CANTLOADSECURITYPACKAGE
ソフトウェア セキュリティ パッケージをロードできない。
DPERR_CANTLOADSSPI
証明書が指定されず、また証明書を要求するセキュリティ サポート プロバイダ インターフェイス (SSPI) をロードできない。
DPERR_CAPSNOTAVAILABLEYET
DirectPlay オブジェクトの能力がまだ決定されていない。このエラーは、DirectPlay オブジェクトが使用可能な帯域幅と遅延時間を判定するためにポーリングする必要がある接続ソリューションに実装されている場合に発生する。
DPERR_CONNECTING
このメソッドは、ネットワークに接続中である。アプリケーションは、正常終了を示す DP_OK が返されるまで、または別のエラーが返されるまでこのメソッドを使用し続ける。
DPERR_CONNECTIONLOST
データの送信中にサービス プロバイダ接続がリセットされた。
DPERR_ENCRYPTIONFAILED
要求された情報がデジタル式に暗号化できなかった。メッセージのプライバシーを保護するために暗号化機能が使用される。このエラーは、セキュア セッションにのみ関係がある。
DPERR_ENCRYPTIONNOTSUPPORTED
DPSECURITYDESC 構造体で要求された暗号化のタイプは使用できない。このエラーは、セキュア セッションにのみ関係がある。
DPERR_EXCEPTION
要求処理時に例外が発生した。
DPERR_GENERIC
未定義エラー条件が発生した。
DPERR_INVALIDFLAGS
このメソッドに渡されたフラグが無効であった。
DPERR_INVALIDGROUP
グループ ID が、このゲーム セッションの有効なグループ ID として認識されない。
DPERR_INVALIDINTERFACE
インターフェイス パラメータが無効である。
DPERR_INVALIDOBJECT
DirectPlay オブジェクト ポインタが無効である。
DPERR_INVALIDPARAMS
メソッドに渡されたパラメータのいずれかまたはいくつかが無効である。
DPERR_INVALIDPASSWORD
パスワードが必要なセッションに参加しようとしたときに、無効なパスワードが指定された。
DPERR_INVALIDPLAYER
プレーヤー ID がこのゲーム セッションの有効なプレーヤー ID として認識されない。
DPERR_INVALIDPRIORITY
指定された優先順位が、許可されている優先順位の範囲 (0 以上 65535 以下) 外である。
DPERR_LOGONDENIED
証明書が要求されているのに、証明書が指定されていないか、または証明書が無効であるため、セッションを開くことができなかった。
DPERR_NOCAPS
DirectPlay が使用しようとしている通信リンクでは、この機能を使用できない。
DPERR_NOCONNECTION
通信リンクが確立されなかった。
DPERR_NOINTERFACE
インターフェイスがサポートされていない。
DPERR_NOMESSAGES
受信キューにメッセージがない。
DPERR_NONAMESERVERFOUND
ネーム サーバー (ホスト) を見つけることができなかったか、作成できなかった。プレーヤーを作成するには、ホストが存在していなければならない。
DPERR_NONEWPLAYERS
セッションは、新しいプレーヤーを受け付けていない。
DPERR_NOPLAYERS
セッション内にアクティブなプレーヤーがいない。
DPERR_NOSESSIONS
このゲームに対応する既存のセッションがない。
DPERR_NOTLOBBIED
アプリケーションが IDirectPlayLobby3::RunApplication メソッドを使用して起動されなかった場合、またはこの DirectPlayLobby オブジェクトに対して現在初期化されている DPLCONNECTION 構造体がない場合、IDirectPlayLobby3::Connect メソッドにより返される。
DPERR_NOTLOGGEDIN
プレーヤー アプリケーションまたはクライアント アプリケーションがログオンされていないので、処理を実行できない。クライアント アプリケーションがログオンしないで機密保護メッセージを送信しようとすると、IDirectPlay4::Send メソッドにより返される。
DPERR_OUTOFMEMORY
要求された操作を実行するには、メモリが不足している。
DPERR_PENDING
エラーではない。この戻り値は、非同期送信で、キューへの設定が成功するところまで処理が進んだことを示す。詳細については、IDirectPlay4::SendEx を参照すること。
DPERR_PLAYERLOST
プレーヤーは、セッションへの接続を喪失した。
DPERR_SENDTOOBIG
IDirectPlay4::Send メソッドにより送信されているメッセージが大きすぎる。
DPERR_SESSIONLOST
セッションへの接続が喪失した。
DPERR_SIGNFAILED
要求された情報に、デジタル署名できなかった。デジタル署名は、メッセージを認証するときに使用される。
DPERR_TIMEOUT
指定された時間内に処理を完了できなかった。
DPERR_UNAVAILABLE
この時点では、要求された関数を使用できない。
DPERR_UNINITIALIZED
要求されたオブジェクトが初期化されていない。
DPERR_UNKNOWNAPPLICATION
未確認のアプリケーションが指定された。
DPERR_UNKNOWNMESSAGE
メッセージ ID が有効でない。取り消すメッセージの ID が無効の場合に、IDirectPlay4::CancelMessage から返される
DPERR_UNSUPPORTED
関数または機能を、この実装やこのサービス プロバイダで使用できない。IDirectPlay4::GetGroupConnectionSettingsIDirectPlay4::SetGroupConnectionSettings ロビー セッションでないセッションから呼び出された場合に、それらから返される。優先順位やタイムアウトが設定されている場合に、それらがサービス プロバイダによりサポートされておらず、また DirectPlay プロトコルがオンでないときに、IDirectPlay4::SendEx から返される。送信キューをチェックする場合に、それがサービス プロバイダによりサポートされておらず、また DirectPlay プロトコルがオンでないとき、IDirectPlay4::GetMessageQueue から返される。
DPERR_USERCANCEL
次の場合に返される。1) ユーザーが IDirectPlay4::Open メソッドを呼び出している最中に接続プロセスを取り消した場合。2) IDirectPlay4::EnumSessions を呼び出している最中に、ユーザーが DirectPlay サービス プロバイダのダイアログ ボックスのいずれかで [キャンセル] をクリックした場合。
E_UNKNOWN
一般に、なんらかの重大な障害が発生したことを示す。たとえば、サービス プロバイダが正しく初期化できなかったり、IPX などのプロトコルがコンピュータに正しくインストールされなかった。