WinHTTP에서 오류 처리

모든 WinHTTP API 함수가 동일한 방식으로 오류를 보고하는 것은 아닙니다.

WinHttpSetTimeouts와 같은 일부 함수는 FALSE일 때 실패를 나타내는 BOOL을 반환합니다. FALSE가 반환되면 오류에 관심이 있는 호출자는 GetLastError를 호출해야 합니다. 함수가 숨긴 경우 GetLastError 가 호출되면( FALSE를 제외한 모든 항목이 반환됨) 반환된 값은 예측할 수 없으며 Windows 버전, 서비스 팩 간에 또는 동일한 함수에 대한 호출 간에 변경될 수 있습니다.

WinHttpConnect와 같은 일부 함수는 HINTERNET 의사 핸들을 반환합니다. 이러한 함수는 NULL을 반환하여 오류가 표시되는 경우를 제외하고 정확히 동일합니다. NULL이 반환되면 오류에 관심이 있는 호출자는 GetLastError를 호출해야 합니다. 함수가 숨기면 GetLastError 가 호출되는 경우( NULL을 제외한 모든 항목이 반환됨) 반환된 값은 예측할 수 없으며 Windows 버전, 서비스 팩 간에 또는 동일한 함수에 대한 호출 간에 변경될 수 있습니다.

WinHttpGetProxyResult와 같은 일부 함수는 DWORD 오류 코드를 반환하며 더 많은 오류 정보를 위해 다른 함수를 호출할 필요가 없습니다. 이러한 함수의 경우 GetLastError 를 호출하면 안 됩니다. GetLastError가 함수의 성공 또는 실패에 관계없이 호출되는 경우 반환된 값은 예측할 수 없으며 Windows 버전, 서비스 팩 간에 또는 동일한 함수에 대한 호출 간에 변경 될 수 있습니다.