Descoberta sem um arquivo de configuração automática
Se um arquivo de configuração automática de proxy não tiver sido implantado na rede local, WinHttpGetProxyForUrl não é possível encontrar um servidor proxy. Se WinHttpGetProxyForUrl falhar, há várias estratégias de fall-back possíveis para obter uma configuração de proxy viável, dependendo de seu ambiente de tempo de execução. Isso inclui solicitar a configuração de proxy por meio de uma interface do usuário, exigir que alguém armazene a configuração de proxy no Registro usando o utilitário WinHTTP "ProxyCfg.exe" ou usar WinHttpGetIEProxyConfigForCurrentUser verificar se um servidor proxy está listado nas configurações do Internet Explorer.
É possível que não haja nenhum arquivo de configuração automática de proxy porque o cliente tem uma conexão direta com a Internet, como através de um ISP, e não precisa de um servidor proxy.
Um servidor proxy pode ser necessário, por outro lado, mas a rede local pode não suportar WPAD. Nesse caso, a configuração de proxy deve ser obtida do usuário ou encontrada em algum lugar na máquina cliente.
Um aplicativo baseado em WinHTTP em execução em um ambiente de servidor de camada intermediária, como um aplicativo COM+ ou ASP, deve depender de um administrador de servidor definindo uma configuração de proxy padrão no Registro usando o utilitário "ProxyCfg.exe". Essas informações de configuração padrão podem ser recuperadas usando a função WinHttpGetDefaultProxyConfiguration ou simplesmente especificando o sinalizador WINHTTP_ACCESS_TYPE_PRECONFIG na chamadaWinHttpOpen.
Por outro lado, um aplicativo WinHTTP em execução em uma máquina desktop cliente pode tentar examinar as configurações de proxy do Internet Explorer. WinHttpGetIEProxyConfigForCurrentUser preenche uma estrutura de WINHTTP_CURRENT_USER_IE_PROXY_CONFIG fornecida pelo chamador com as configurações de proxy do Internet Explorer do usuário atual para a conexão ativa atual (dial-up, VPN ou LAN). Essa configuração pode indicar que a deteção automática é usada, ou pode especificar uma URL para um arquivo de configuração automática de proxy, ou pode especificar um servidor proxy real a ser usado, ou pode especificar uma combinação dos três. Se essas informações incluírem uma URL PAC ou um servidor proxy, o aplicativo WinHTTP pode tentar usá-las.
Um exemplo que usa o WinHttpGetProxyForUrl e funções WinHttpGetIEProxyConfigForCurrentUser pode ser encontrado nos exemplos WinHTTP do Platform Software Development Kit (SDK).