Partilhar via


Tratamento de erros no WinHTTP

Nem todas as funções da API WinHTTP relatam erros da mesma maneira.

Algumas funções, como WinHttpSetTimeouts, retornam um BOOL que indica falha quando FALSE. Se FALSE for retornado, os chamadores interessados no erro devem ligar para GetLastError. Se GetLastError for chamado quando a função foi bem-sucedida (retornou tudo menos FALSE), o valor retornado é imprevisível e pode mudar entre versões do Windows, Service Packs ou até mesmo entre chamadas para a mesma função.

Algumas funções, como WinHttpConnect, retornam um identificador HINTERNET pseudo. Essas funções são exatamente as mesmas, exceto que a falha é indicada retornando NULL. Se NULL for retornado, os chamadores interessados no erro devem chamar GetLastError. Se GetLastError for chamado quando a função foi bem-sucedida (retornou tudo menos NULL), o valor retornado é imprevisível e pode mudar entre versões do Windows, Service Packs ou até mesmo entre chamadas para a mesma função.

Algumas funções, como WinHttpGetProxyResult, retornam um código de erro DWORD e não há necessidade de chamar quaisquer outras funções para obter mais informações de erro. Para essas funções, GetLastError não deve ser chamado. Se GetLastError for chamado, independentemente do sucesso ou falha da função, o valor retornado é imprevisível e pode mudar entre versões do Windows, Service Packs ou até mesmo entre chamadas para a mesma função.