Uso de búferes de cadenas
Las funciones que devuelven cadenas contienen un parámetro de entrada, lpszBuffer y un parámetro size, lpdwBufferLength. Aunque lpszBuffer puede ser NULL, lpdwBufferLength debe ser un puntero válido a una variable DWORD . Si el búfer de entrada al que apunta lpszBuffer es NULL o demasiado pequeño para contener la cadena de salida, se produce un error en la función y GetLastError devuelve ERROR_INSUFFICIENT_BUFFER. La variable a la que apunta lpdwBufferLength contiene un número que representa el número de bytes que la función requiere para devolver la cadena solicitada, incluido el terminador null . La aplicación debe asignar un búfer de este tamaño, establecer la variable a la que apunta lpdwBufferLength en este valor y volver a enviar la solicitud. Si el tamaño del búfer es suficiente para recibir la cadena solicitada, la cadena se copia en el búfer de salida con un terminador nulo y la función devuelve una indicación correcta. La variable a la que apunta lpdwBufferLength ahora contiene el número de caracteres almacenados en el búfer, excepto el terminador nulo .
Nota
WinINet no admite implementaciones de servidor. Además, no se debe usar desde un servicio. En el caso de las implementaciones de servidor o los servicios, use Servicios HTTP de Microsoft Windows (WinHTTP).