次の方法で共有


PFN_WSK_SEND_MESSAGES コールバック関数 (wsk.h)

WskSendMessages 関数は、複数のデータグラムをリモート トランスポート アドレスに送信します。

構文

PFN_WSK_SEND_MESSAGES PfnWskSendMessages;

NTSTATUS PfnWskSendMessages(
  [in]                 PWSK_SOCKET Socket,
  [in]                 PWSK_BUF_LIST BufferList,
                       ULONG Flags,
  [in, optional]       PSOCKADDR RemoteAddress,
  [in]                 ULONG ControlInfoLength,
  [In_reads_bytes_opt] PCMSGHDR ControlInfo,
  [in, out]            PIRP Irp
)
{...}

パラメーター

[in] Socket

データグラムを送信するソケット オブジェクトを指定する WSK_SOCKET 構造体へのポインター。

[in] BufferList

送信するデータグラムのリストを含む初期化 されたWSK_BUF_LIST 構造体へのポインター。

Flags

[予約済み]このパラメーターは、システムで使用するために予約されています。 WSK アプリケーションでは、このパラメーターを 0 に設定する必要があります。

[in, optional] RemoteAddress

データグラムを送信するリモート トランスポート アドレスを指定する構造体へのポインター。

[in] ControlInfoLength

ControlInfo パラメーターによって指されるバッファー内のデータのバイト数。 データグラムに関連付けられているコントロール情報がない場合、 ControlInfoLength パラメーターは 0 である必要があります。

[In_reads_bytes_opt] ControlInfo

送信されるデータグラムに関連付けられている制御情報を含むバッファーへのポインター。 制御情報データは 1 つ以上の制御データ・オブジェクトで構成され、それぞれが CMSGHDR 構造体で始まります。 データグラムに関連付けられている制御情報がない場合、このパラメーターは NULL にする必要があります。

ControlInfo は、すべてのトランスポートでサポートされていない場合があります。

[in, out] Irp

WSK サブシステムが非同期的に送信操作を完了するために使用する、呼び出し元によって割り当てられた IRP へのポインター。 WSK 関数での IRP の使用の詳細については、「 Winsock カーネル関数での IRP の使用」を参照してください。

戻り値

リターン コード 説明
STATUS_SUCCESS データグラムがソケット経由で正常に送信されました。 IRP は成功状態で完了します。 IRP の IoStatus.Information フィールドには、送信されたバイト数が含まれています。
STATUS_PENDING WSK サブシステムは、すぐにソケット経由でデータグラムを送信できませんでした。 WSK サブシステムは、ソケット経由でデータグラムを送信した後、IRP を完了します。 送信操作の状態は、IRP の IoStatus.Status フィールドに返されます。 操作が成功した場合、IRP の IoStatus.Information フィールドには、送信されたバイト数が含まれます。
その他の状態コード エラーが発生しました。 IRP は失敗状態で完了します。

要件

要件
サポートされている最小のクライアント Windows 8
Header wsk.h (wsk.h を含む)

こちらもご覧ください

WSK_SOCKET

WSK_BUF_LIST

CMSGHDR

Winsock カーネル関数での IRP の使用