WinHttpSetOption-Funktion (winhttp.h)

Die WinHttpSetOption-Funktion legt eine Internetoption fest.

Syntax

WINHTTPAPI BOOL WinHttpSetOption(
  [in] HINTERNET hInternet,
  [in] DWORD     dwOption,
  [in] LPVOID    lpBuffer,
  [in] DWORD     dwBufferLength
);

Parameter

[in] hInternet

Der HINTERNET-Handle , auf dem Daten festgelegt werden sollen. Beachten Sie, dass dies entweder ein Sitzungshandle oder ein Anforderungshandle sein kann, je nachdem, welche Option festgelegt wird. Weitere Informationen zum Ermitteln des geeigneten Handles zum Festlegen einer bestimmten Option finden Sie in den Option Flags.

[in] dwOption

Ein nicht signierter ganzzahliger Wert, der die zu festlegende Internetoption enthält. Dies kann eine der Option Flags-Werte sein.

[in] lpBuffer

Ein Zeiger auf einen Puffer, der die Optionseinstellung enthält.

[in] dwBufferLength

Unsigned long integer value that contains the length of the lpBuffer buffer. Die Länge des Puffers wird in Zeichen für die folgenden Optionen angegeben; für alle anderen Optionen wird die Länge in Bytes angegeben.

Rückgabewert

Gibt TRUE zurück, wenn dies erfolgreich ist, oder FALSE andernfalls. Rufen Sie getLastError für erweiterte Fehlerinformationen auf. Zu den zurückgegebenen Fehlercodes gehören:

Fehlercode BESCHREIBUNG
ERROR_WINHTTP_INCORRECT_HANDLE_STATE
Der angeforderte Vorgang kann nicht ausgeführt werden, da der bereitgestellte Handle nicht im richtigen Zustand ist.
ERROR_WINHTTP_INCORRECT_HANDLE_TYPE
Der typ des bereitgestellten Handles ist für diesen Vorgang falsch.
ERROR_WINHTTP_INTERNAL_ERROR
Ein interner Fehler ist aufgetreten.
ERROR_WINHTTP_INVALID_OPTION
Eine Anforderung an WinHttpQueryOption oder WinHttpSetOption hat einen ungültigen Optionswert angegeben.
ERROR_INVALID_PARAMETER
Ein Parameter ist nicht gültig.

Dieser Wert wird zurückgegeben, wenn WINHTTP_OPTION_WEB_SOCKET_KEEPALIVE_INTERVAL auf einen Wert festgelegt ist, der niedriger als 15000 ist.

ERROR_WINHTTP_OPTION_NOT_SETTABLE
Die angeforderte Option kann nicht festgelegt werden, nur abgefragt.
ERROR_INVALID_PARAMETER
Ein Parameter ist nicht gültig.

Dieser Wert wird zurückgegeben, wenn WINHTTP_OPTION_WEB_SOCKET_KEEPALIVE_INTERVAL auf einen Wert festgelegt ist, der niedriger als 15000 ist.

ERROR_NOT_ENOUGH_MEMORY
Nicht genügend Arbeitsspeicher war verfügbar, um den angeforderten Vorgang abzuschließen. (Windows-Fehlercode)

Hinweise

Anmeldeinformationen, die an WinHttpSetOption übergeben werden, können unerwartet im Nurtext gesendet werden. Es wird dringend empfohlen, WinHttpQueryAuthSchemes und WinHttpSetCredentials anstelle von WinHttpSetOption zum Festlegen von Anmeldeinformationen zu verwenden.

Hinweis Bei der Verwendung der Passport-Authentifizierung muss jedoch eine WinHTTP-Anwendung, die auf einen 407-Statuscode reagiert, WinHttpSetOption verwenden, um Proxyanmeldeinformationen anstelle von WinHttpSetCredentials bereitzustellen. Dies gilt nur bei der Verwendung der Passport-Authentifizierung; verwenden Sie unter allen anderen Umständen WinHttpSetCredentials.
 
Auch wenn WinHTTP im asynchronen Modus verwendet wird (d. h. wenn WINHTTP_FLAG_ASYNC in WinHttpOpen festgelegt wurde), wird diese Funktion synchron ausgeführt. Der Rückgabewert gibt Erfolg oder Fehler an. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

GetLastError gibt den Fehler ERROR_INVALID_PARAMETER zurück, wenn ein Options flag angegeben wird, das nicht festgelegt werden kann.

Weitere Informationen und Codebeispiele zur Verwendung von WinHttpSetOption finden Sie unter Authentifizierung in WinHTTP.

Hinweis Informationen zu Windows XP und Windows 2000 finden Sie im Abschnitt "Laufzeitanforderungen" der WinHttp-Startseite .
 

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP, Windows 2000 Professional mit SP3 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003, Windows 2000 Server mit SP3 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winhttp.h
Bibliothek Winhttp.lib
DLL Winhttp.dll
Verteilbare Komponente WinHTTP 5.0 und Internet Explorer 5.01 oder höher unter Windows XP und Windows 2000.

Weitere Informationen

Authentifizierung in WinHTTP

Option Flags

WinHTTP-Versionen

WinHttpCloseHandle

WinHttpOpen

WinHttpQueryOption