使用字符串缓冲区

返回字符串的函数包含输入参数 lpszBuffer 和 size 参数 lpdwBufferLength。 尽管 lpszBuffer 可以为 NULL,但 lpdwBufferLength 必须是指向 DWORD 变量的有效指针。 如果 lpszBuffer 指向的输入缓冲区为 NULL 或太小,无法容纳输出字符串,则该函数将失败, GetLastError 将返回 ERROR_INSUFFICIENT_BUFFERlpdwBufferLength 指向的变量包含一个数字,该数字表示函数返回请求的字符串(包括 null 终止符)所需的字节数。 应用程序应分配此大小的缓冲区,将 lpdwBufferLength 指向的变量设置为此值,然后重新提交请求。 如果缓冲区大小足以接收请求的字符串,则会使用 null 终止符将字符串复制到输出缓冲区,并且函数返回成功指示。 lpdwBufferLength 指向的变量现在包含缓冲区中存储的字符数,不包括 null 终止符。

注意

WinINet 不支持服务器实现。 此外,不应从服务使用它。 对于服务器实现或服务,请使用 Microsoft Windows HTTP Services (WinHTTP)