TRANSMIT_PACKETS_ELEMENT 结构 (mswsock.h)

TRANSMIT_PACKETS_ELEMENT 结构指定要由 TransmitPackets 函数传输的单个数据元素。

语法

typedef struct _TRANSMIT_PACKETS_ELEMENT {
  ULONG dwElFlags;
  ULONG cLength;
  union {
    struct {
      LARGE_INTEGER nFileOffset;
      HANDLE        hFile;
    };
    PVOID pBuffer;
  };
} TRANSMIT_PACKETS_ELEMENT, *PTRANSMIT_PACKETS_ELEMENT, *LPTRANSMIT_PACKETS_ELEMENT;

成员

dwElFlags

类型: ULONG

用于描述数据包数组元素的内容以及自定义 TransmitPackets 函数处理的标志。 下表列出了有效标志:

标志 含义
TP_ELEMENT_FILE
指定数据驻留在文件中。 dwElFlags 的默认设置。 与TP_ELEMENT_MEMORY互斥。
TP_ELEMENT_MEMORY
指定数据驻留在内存中。 与TP_ELEMENT_FILE互斥。
TP_ELEMENT_EOP
指定不应将此元素与从套接字层到传输的单个 发送 请求中的下一个元素组合。 此标志用于精细控制数据报或面向消息的套接字中每个消息的内容。

cLength

类型: ULONG

要传输的字节数。 如果为零,则传输整个文件。

nFileOffset

类型: LARGE_INTEGER

开始传输的文件偏移量(以字节为单位)。 仅当在 dwEIFlags 中指定了TP_ELEMENT_FILE时有效。 设置为 –1 时,传输从当前字节偏移量开始。

hFile

类型: HANDLE

要传输的打开文件的句柄。 仅当在 dwEIFlags 中指定了TP_ELEMENT_FILE时有效。 Windows 按顺序读取文件;通过使用 FILE_FLAG_SEQUENTIAL_SCAN 打开此句柄,提高了缓存性能。

pBuffer

类型: PVOID

指向要发送的内存中的数据的指针。 仅在 dwEIFlags 中指定了 TP_ELEMENT_MEMORY 时有效。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 mswsock.h

另请参阅

TransmitPackets

LPFN_WSARECVMSG (WSARecvMsg)

send