Fonction InternetSetCookieExA (wininet.h)

La fonction InternetSetCookieEx crée un cookie avec un nom spécifié associé à une URL spécifiée. Cette fonction diffère de la fonction InternetSetCookie en pouvant créer des cookies tiers.

Syntaxe

DWORD InternetSetCookieExA(
  [in] LPCSTR    lpszUrl,
  [in] LPCSTR    lpszCookieName,
  [in] LPCSTR    lpszCookieData,
  [in] DWORD     dwFlags,
  [in] DWORD_PTR dwReserved
);

Paramètres

[in] lpszUrl

Pointeur vers une chaîne terminée par null qui contient l’URL pour laquelle le cookie doit être défini.

Si ce pointeur a la valeur NULL, InternetSetCookieEx échoue avec une erreur de ERROR_INVALID_PARAMETER .

[in] lpszCookieName

Pointeur vers une chaîne terminée par null qui contient le nom à associer à ce cookie. Si ce pointeur a la valeur NULL, aucun nom n’est associé au cookie.

[in] lpszCookieData

Pointeur vers une chaîne terminée par null qui contient les données à associer au nouveau cookie.

Si ce pointeur a la valeur NULL, InternetSetCookieEx échoue avec une erreur de ERROR_INVALID_PARAMETER .

[in] dwFlags

Indicateurs qui contrôlent la façon dont la fonction récupère les données de cookie :

Valeur Signification
INTERNET_COOKIE_EVALUATE_P3P
Si cet indicateur est défini et que le paramètre dwReserved n’a pas la valeur NULL, le paramètre dwReserved est converti en un LPCTSTR qui pointe vers un en-tête Platform-for-Privacy-Protection (P3P) pour le cookie en question.
INTERNET_COOKIE_HTTPONLY
Permet la récupération des cookies marqués comme « HTTPOnly ».

N’utilisez pas cet indicateur si vous exposez une interface pouvant faire l’objet d’un script, car cela a des implications en matière de sécurité. Si vous exposez une interface pouvant faire l’objet d’un script, vous pouvez devenir un vecteur d’attaque pour les attaques par script intersite. Il est absolument impératif que vous utilisiez cet indicateur uniquement s’ils peuvent garantir que vous n’autoriserez jamais le code tiers à définir un cookie à l’aide de cet indicateur au moyen d’un mécanisme d’extensibilité que vous fournissez.

Version: Nécessite Internet Explorer 8.0 ou version ultérieure.

INTERNET_COOKIE_THIRD_PARTY
Indique que le cookie en cours de définition est un cookie tiers.
INTERNET_FLAG_RESTRICTED_ZONE
Indique que le cookie en cours de définition est associé à un site non approuvé.

[in] dwReserved

NULL ou contient un pointeur vers un en-tête P3P (Platform-for-Privacy-Protection) à associer au cookie.

Valeur retournée

Retourne un membre de l’énumération InternetCookieState si elle réussit, ou FALSE si la fonction échoue. En cas d’échec, si un appel à GetLastError retourne ERROR_NOT_ENOUGH_MEMORY, la mémoire système était insuffisante.

Remarques

Note WinINet ne prend pas en charge les implémentations de serveur. En outre, il ne doit pas être utilisé à partir d’un service. Pour les implémentations de serveur ou les services, utilisez Microsoft Windows HTTP Services (WinHTTP).
 

Notes

L’en-tête wininet.h définit InternetSetCookieEx comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

   
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête wininet.h
Bibliothèque Wininet.lib
DLL Wininet.dll

Voir aussi

HTTP Cookies

InternetGetCookie

InternetGetCookieEx

InternetSetCookie

Gestion des cookies

Fonctions WinINet