Freigeben über


InternetGetCookieW-Funktion (wininet.h)

Ruft das Cookie für die angegebene URL ab.

Syntax

BOOL InternetGetCookieW(
  [in]      LPCWSTR lpszUrl,
  [in]      LPCWSTR lpszCookieName,
  [out]     LPWSTR  lpszCookieData,
  [in, out] LPDWORD lpdwSize
);

Parameter

[in] lpszUrl

Ein Zeiger auf eine NULL-endende Zeichenfolge, die die URL angibt, für die Cookies abgerufen werden sollen.

[in] lpszCookieName

Nicht implementiert.

[out] lpszCookieData

Ein Zeiger auf einen Puffer, der die Cookiedaten empfängt. Dieser Parameter kann NULL sein.

[in, out] lpdwSize

Ein Zeiger auf eine Variable, die die Größe des lpszCookieData-Parameterpuffers in TCHARs angibt. Wenn die Funktion erfolgreich ist, empfängt der Puffer die Datenmenge, die in den Puffer lpszCookieData kopiert wurde. Wenn lpszCookieDataNULL ist, empfängt dieser Parameter einen Wert, der die Größe des Puffers angibt, der zum Kopieren aller Cookiedaten erforderlich ist, ausgedrückt als Byteanzahl.

Rückgabewert

Wenn die Funktion erfolgreich ist, gibt die Funktion TRUE zurück.

Wenn die Funktion fehlschlägt, wird FALSE zurückgegeben. Rufen Sie GetLastError auf, um erweiterte Fehlerdaten zu erhalten.

Die folgenden Fehlerwerte gelten für InternetGetCookie.

Rückgabecode Beschreibung
ERROR_NO_MORE_ITEMS
Es gibt kein Cookie für die angegebene URL und alle übergeordneten Elemente.
ERROR_INSUFFICIENT_BUFFER
Der in lpdwSize übergebene Wert reicht nicht aus, um alle Cookiedaten zu kopieren. Der in lpdwSize zurückgegebene Wert ist die Größe des Puffers, der zum Abrufen aller Daten erforderlich ist.
ERROR_INVALID_PARAMETER
Mindestens einer der Parameter ist ungültig.

Der lpszUrl-Parameter ist NULL.

Hinweise

InternetGetCookie erfordert keinen Aufruf von InternetOpen. InternetGetCookie überprüft im Verzeichnis windows\cookies auf persistente Cookies, deren Ablaufdatum irgendwann in der Zukunft festgelegt ist. InternetGetCookie durchsucht auch den Speicher nach Sitzungscookies, d. h. Cookies, die kein Ablaufdatum haben, die im selben Prozess von InternetSetCookie erstellt wurden, da diese Cookies nicht in Dateien geschrieben werden. Regeln zum Erstellen von Cookie-Dateien sind systemintern und können sich in Zukunft ändern.

Wie in HTTP-Cookies erwähnt, gibt InternetGetCookie keine Cookies zurück, die der Server mit dem Attribut "HttpOnly" im Set-Cookie-Header als nicht skriptfähig markiert hat.

Wie alle anderen Aspekte der WinINet-API kann diese Funktion nicht sicher innerhalb von DllMain oder den Konstruktoren und Destruktoren globaler Objekte aufgerufen werden.

Hinweis WinINet unterstützt keine Serverimplementierungen. Darüber hinaus sollte es nicht von einem Dienst verwendet werden. Verwenden Sie für Serverimplementierungen oder Dienste Microsoft Windows HTTP Services (WinHTTP).
 

Hinweis

Der wininet.h-Header definiert InternetGetCookie als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile wininet.h
Bibliothek Wininet.lib
DLL Wininet.dll

Weitere Informationen

HTTP-Cookies

InternetGetCookieEx

InternetSetCookie

InternetSetCookieEx

Verwalten von Cookies

WinINet-Funktionen