Función WinHttpSetDefaultProxyConfiguration (winhttp.h)
Importante
El uso de WinHttpSetDefaultProxyConfiguration está en desuso en Windows 8.1 y versiones más recientes. La mayoría de las configuraciones de proxy no son compatibles con WinHttpSetDefaultProxyConfiguration, ni admite la autenticación de proxy. En su lugar, use WINHTTP_ACCESS_TYPE_AUTOMATIC_PROXY con WinHttpOpen.
La función WinHttpSetDefaultProxyConfiguration establece la configuración predeterminada del proxy WinHTTP en el Registro.
Sintaxis
WINHTTPAPI BOOL WinHttpSetDefaultProxyConfiguration(
[in] WINHTTP_PROXY_INFO *pProxyInfo
);
Parámetros
[in] pProxyInfo
Puntero a una variable de tipo WINHTTP_PROXY_INFO que especifica la configuración de proxy predeterminada.
Valor devuelto
Devuelve TRUE si es correcto o FALSE en caso contrario. Para obtener información de error extendida, llame a GetLastError. Entre los códigos de error devueltos se encuentran los siguientes.
Código de error | Descripción |
---|---|
|
Se ha producido un error interno. |
|
No había suficiente memoria disponible para completar la operación solicitada. (Código de error de Windows) |
Comentarios
La configuración de proxy predeterminada establecida por WinHttpSetDefaultProxyConfiguration se puede invalidar para una sesión winHTTP existente llamando a WinHttpSetOption y especificando la marca WINHTTP_OPTION_PROXY . La configuración de proxy predeterminada se puede invalidar para una nueva sesión especificando la configuración con la función WinHttpOpen .
El miembro dwAccessType de la estructura WINHTTP_PROXY_INFO a la que apunta pProxyInfo debe establecerse en WINHTTP_ACCESS_TYPE_NAMED_PROXY si se especifica un proxy. De lo contrario, debe establecerse en WINHTTP_ACCESS_TYPE_DEFAULT_PROXY.
Las sesiones nuevas creadas después de llamar a esta función usan la nueva configuración de proxy predeterminada.
Incluso cuando WinHTTP se usa en modo asincrónico (es decir, cuando se ha establecido WINHTTP_FLAG_ASYNC en WinHttpOpen), esta función funciona de forma sincrónica. El valor devuelto indica éxito o error. Para obtener información de error extendida, llame a GetLastError.
Ejemplos
En el ejemplo de código siguiente se muestra cómo establecer la configuración de proxy predeterminada en el Registro.
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;
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP, Windows 2000 Professional con SP3 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003, Windows 2000 Server con SP3 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | winhttp.h |
Library | Winhttp.lib |
Archivo DLL | Winhttp.dll |
Redistribuible | WinHTTP 5.0 e Internet Explorer 5.01 o posterior en Windows XP y Windows 2000. |