Platform SDK: DirectX |
ここでは、Visual Basic でのアプリケーション開発について説明する。
C 言語や C++ では、すべてのメソッドの呼び出しで HRESULT 値が返される。アプリケーションは、戻り値を調べて、それに基づいて処理を行ったり、またはそれを無視することができる。
DirectX for Visual Basic でのエラー処理は、まったく異なる。Visual Basic では、メソッド呼び出しは成功するか、失敗するかのいずれかである。Visual Basic には、S_FALSE などの正の HRESULT 値と等価の成功コードはない。呼び出しが失敗した場合、エラーが発生し、アプリケーションにエラー ハンドラがない限り処理は終了する。エラー番号は、Visual Basic のグローバル オブジェクト Err に設定される。各メソッドで発生する可能性のあるエラーのほとんどは、このドキュメントのメソッドのリファレンス ページに掲載している。
次の例では、gObjDPlay は DirectPlay4 オブジェクトである。DirectPlay4.CreatePlayer 呼び出しが失敗すると、FAILEDCREATEPLAYER ラベルから処理が続行される。
Function GetPlayerID(PlayerName As String, PlayerHandle As String) _ as Long On Error GoTo FAILEDCREATEPLAYER GetPlayerID = gObjDPlay.CreatePlayer(PlayerName, PlayerHandle, 0, 0) On Error GoTo 0 ' このセクションのコードは、CreatePlayer が成功した場合にのみ実行される。 . . . Exit Function FAILEDCREATEPLAYER: If Err.Number = DPERR_INVALIDPLAYER Then MsgBox ("Not a valid player.") Else MsgBox("Unidentified player creation error.") End If GetPlayerID = 0 End Function