WinHttpSetDefaultProxyConfiguration, fonction (winhttp.h)
Important
L’utilisation de WinHttpSetDefaultProxyConfiguration est déconseillée sur Windows 8.1 et plus récente. La plupart des configurations de proxy ne sont pas prises en charge par WinHttpSetDefaultProxyConfiguration et ne prennent pas en charge l’authentification proxy. Utilisez plutôt WINHTTP_ACCESS_TYPE_AUTOMATIC_PROXY avec WinHttpOpen.
La fonction WinHttpSetDefaultProxyConfiguration définit la configuration de proxy WinHTTP par défaut dans le Registre.
Syntaxe
WINHTTPAPI BOOL WinHttpSetDefaultProxyConfiguration(
[in] WINHTTP_PROXY_INFO *pProxyInfo
);
Paramètres
[in] pProxyInfo
Pointeur vers une variable de type WINHTTP_PROXY_INFO qui spécifie la configuration de proxy par défaut.
Valeur retournée
Retourne TRUE en cas de réussite, ou FALSE dans le cas contraire. Pour obtenir des informations d’erreur étendues, appelez GetLastError. Parmi les codes d’erreur retournés figurent les suivants.
Code d'erreur | Description |
---|---|
|
Une erreur interne s'est produite. |
|
La mémoire disponible était insuffisante pour terminer l’opération demandée. (Code d’erreur Windows) |
Remarques
La configuration de proxy par défaut définie par WinHttpSetDefaultProxyConfiguration peut être remplacée pour une session WinHTTP existante en appelant WinHttpSetOption et en spécifiant l’indicateur WINHTTP_OPTION_PROXY . La configuration de proxy par défaut peut être remplacée pour une nouvelle session en spécifiant la configuration avec la fonction WinHttpOpen .
Le membre dwAccessType de la structure WINHTTP_PROXY_INFO pointée par pProxyInfo doit être défini sur WINHTTP_ACCESS_TYPE_NAMED_PROXY si un proxy est spécifié. Sinon, elle doit être définie sur WINHTTP_ACCESS_TYPE_DEFAULT_PROXY.
Toutes les sessions créées après l’appel de cette fonction utilisent la nouvelle configuration de proxy par défaut.
Même lorsque WinHTTP est utilisé en mode asynchrone (autrement dit, quand WINHTTP_FLAG_ASYNC a été défini dans WinHttpOpen), cette fonction fonctionne de manière synchrone. La valeur de retour indique la réussite ou l’échec. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.
Exemples
L’exemple de code suivant montre comment définir la configuration de proxy par défaut dans le Registre.
WINHTTP_PROXY_INFO proxyInfo;
// Allocate memory for string members.
proxyInfo.lpszProxy = new WCHAR[25];
proxyInfo.lpszProxyBypass = new WCHAR[25];
// Set the members of the proxy info structure.
proxyInfo.dwAccessType = WINHTTP_ACCESS_TYPE_NAMED_PROXY;
swprintf_s(proxyInfo.lpszProxy, 25, L"proxy_server");
swprintf_s(proxyInfo.lpszProxyBypass, 25, L"<local>");
// Set the default proxy configuration.
if (WinHttpSetDefaultProxyConfiguration( &proxyInfo ))
printf("Proxy Configuration Set.\n");
// Free memory allocated to the strings.
delete [] proxyInfo.lpszProxy;
delete [] proxyInfo.lpszProxyBypass;
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP, Windows 2000 Professionnel avec SP3 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003, Windows 2000 Server avec SP3 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | winhttp.h |
Bibliothèque | Winhttp.lib |
DLL | Winhttp.dll |
Composant redistribuable | WinHTTP 5.0 et Internet Explorer 5.01 ou version ultérieure sur Windows XP et Windows 2000. |