Uso dei buffer di stringhe

Le funzioni che restituiscono stringhe contengono un parametro di input, lpszBuffer e un parametro size, lpdwBufferLength. Anche se lpszBuffer può essere NULL, lpdwBufferLength deve essere un puntatore valido a una variabile DWORD . Se il buffer di input a cui punta lpszBuffer è NULL o troppo piccolo per contenere la stringa di output, la funzione ha esito negativo e GetLastError restituisce ERROR_INSUFFICIENT_BUFFER. La variabile a cui punta lpdwBufferLength contiene un numero che rappresenta il numero di byte richiesto dalla funzione per restituire la stringa richiesta, incluso il carattere di terminazione Null . L'applicazione deve allocare un buffer di queste dimensioni, impostare la variabile a cui punta lpdwBufferLength su questo valore e inviare di nuovo la richiesta. Se le dimensioni del buffer sono sufficienti per ricevere la stringa richiesta, la stringa viene copiata nel buffer di output con un carattere di terminazione Null e la funzione restituisce un'indicazione di esito positivo. La variabile a cui punta lpdwBufferLength contiene ora il numero di caratteri archiviati nel buffer, escluso il carattere di terminazione Null .

Nota

WinINet non supporta le implementazioni del server. Inoltre, non deve essere usato da un servizio. Per le implementazioni del server o i servizi, usare i servizi HTTP di Microsoft Windows (WinHTTP).