Bagikan melalui


Penanganan Kesalahan di WinHTTP

Tidak semua fungsi WinHTTP API melaporkan kesalahan dengan cara yang sama.

Beberapa fungsi, seperti WinHttpSetTimeouts, mengembalikan BOOL yang menunjukkan kegagalan saat FALSE. Jika FALSE dikembalikan, penelepon yang tertarik dengan kesalahan harus memanggil GetLastError. Jika GetLastError dipanggil ketika fungsi berhasil (mengembalikan apa pun kecuali FALSE), nilai yang dikembalikan tidak dapat diprediksi dan dapat berubah antara versi Windows, Paket Layanan, atau bahkan antara panggilan ke fungsi yang sama.

Beberapa fungsi, seperti WinHttpConnect, mengembalikan handel semu HINTERNET . Fungsi-fungsi ini persis sama, kecuali kegagalan ditunjukkan dengan mengembalikan NULL. Jika NULL dikembalikan, penelepon yang tertarik dengan kesalahan harus memanggil GetLastError. Jika GetLastError dipanggil ketika fungsi berhasil (mengembalikan apa pun kecuali NULL), nilai yang dikembalikan tidak dapat diprediksi dan dapat berubah antara versi Windows, Paket Layanan, atau bahkan antara panggilan ke fungsi yang sama.

Beberapa fungsi, seperti WinHttpGetProxyResult, mengembalikan kode kesalahan DWORD dan tidak perlu memanggil fungsi lain untuk informasi kesalahan lainnya. Untuk fungsi-fungsi ini, GetLastError tidak boleh dipanggil. Jika GetLastError dipanggil, terlepas dari keberhasilan atau kegagalan fungsi, nilai yang dikembalikan tidak dapat diprediksi dan dapat berubah antara versi Windows, Paket Layanan, atau bahkan antara panggilan ke fungsi yang sama.