Microsoft DirectX 8.0 (Visual Basic) |
指定されたプレーヤーにデータを転送する。メッセージは同期または非同期で送信することができる。
SendTo(idSend As Long, _ buffer() As BYTE, _ lPriority As Long, _ lTimeOut As Long, _ lFlags As CONST_DPNSENDFLAGS) As Long
この処理に対する非同期ハンドルを返す。これは、要求が非同期で処理される場合に、要求を取り消すために DirectPlay8Server.CancelAsyncOperation メソッドの lAsyncHandle パラメータで使用されるハンドルである。
失敗した場合は、Err.Number に次のいずれかの値が設定される。
DPNERR_INVALIDFLAGS |
DPNERR_TIMEDOUT |
このメソッドは、受信者のメッセージ ハンドラに DirectPlay8Event.Receive メソッドを呼び出す。SendTo 要求が完了すると、送信側のメッセージ ハンドラに DirectPlay8Event.SendComplete メソッドが呼び出される。SendComplete メソッドは、DPNMSG_SEND_COMPLETE メッセージ型を保持する。要求が成功したか失敗したかは、このメッセージ型の hResultCode メンバに保持される。アプリケーションは IDirectPlay8Client、IDirectPlay8Server、または IDirectPlay8Peer で Close を呼び出す前や最終リリースをする前に、CancelAsyncOperation を呼び出して残っている Send をキャンセルすべきである。それに失敗すると予期せぬ結果が起きる。