Bagikan melalui


Handel HINTERNET

Bagian ini berisi informasi tentang handel yang digunakan oleh fungsi WinINet dan hierarki tempat mereka bekerja.

Tentang Handel HINTERNET

Handel yang dibuat dan digunakan oleh fungsi WinINet berjenis HINTERNET. Fungsi WinINet mengembalikan handel HINTERNET yang tidak dapat dipertukarkan dengan jenis handel lainnya. Oleh karena itu, mereka tidak dapat digunakan dengan fungsi seperti ReadFile atau CloseHandle. Demikian pula, jenis handel lainnya tidak dapat digunakan dengan fungsi WinINet. Misalnya, handel yang dikembalikan oleh CreateFile tidak dapat diteruskan ke InternetReadFile.

Fungsi InternetCloseHandle menutup handel jenis HINTERNET. Perhatikan bahwa nilai handel didaur ulang dengan cepat; oleh karena itu, jika handel ditutup dan handel baru segera dihasilkan, ada kemungkinan besar handel baru memiliki nilai yang sama dengan handel yang baru saja ditutup.

Menangani Hierarki

Handel HINTERNET dipertahankan dalam hierarki pohon. Handel yang dikembalikan oleh fungsi InternetOpen adalah simpul akar. Handel yang dikembalikan oleh fungsi InternetConnect menempati tingkat berikutnya. Handel yang dikembalikan oleh fungsi FtpOpenFile, FtpFindFirstFile, dan HttpOpenRequest adalah simpul daun.

Windows XP dan Windows Server 2003 R2 dan yang lebih lama: Handel yang dikembalikan oleh , GopherOpenFile, dan GopherFindFirstFile juga merupakan simpul daun.

Diagram berikut mengilustrasikan hierarki handel HINTERNET . Setiap kotak dalam diagram mewakili fungsi yang mengembalikan handel HINTERNET .

fungsi yang membuat handel

Di tingkat atas adalah fungsi InternetOpen , yang membuat handel akar. Tingkat berikutnya berisi fungsi InternetOpenUrl dan InternetConnect . Fungsi yang menggunakan handel yang dikembalikan oleh InternetConnect membentuk tingkat terakhir.

Diagram berikut menunjukkan fungsi yang bergantung pada handel yang dibuat oleh InternetOpenUrl. Kotak berbayang mewakili fungsi yang mengembalikan handel HINTERNET , sementara kotak biasa mewakili fungsi yang menggunakan handel HINTERNET yang dibuat oleh fungsi terkait.

fungsi yang menggunakan handel internetopenurl

Fungsi InternetQueryDataAvailable, InternetReadFile, dan InternetSetFilePointer menggunakan handel HINTERNET yang dibuat oleh InternetOpenUrl.

Hierarki FTP

Diagram berikut menunjukkan fungsi FTP yang bergantung pada handel sesi FTP yang dikembalikan oleh InternetConnect. Kotak berbayang mewakili fungsi yang mengembalikan handel HINTERNET , sementara kotak biasa mewakili fungsi yang menggunakan handel HINTERNET yang dibuat oleh fungsi yang bergantung padanya.

fungsi yang menggunakan handel sesi ftp

Fungsi FtpCreateDirectory, FtpDeleteFile, FtpGetCurrentDirectory, FtpGetFile, FtpPutFile, FtpRemoveDirectory, FtpRenameFile, dan FtpSetCurrentDirectory semuanya menggunakan handel HINTERNET yang dibuat oleh InternetConnect.

Diagram berikut menunjukkan dua fungsi FTP yang mengembalikan handel dan fungsi yang bergantung padanya. Kotak berbayang mewakili fungsi yang mengembalikan handel HINTERNET , sementara kotak biasa mewakili fungsi yang menggunakan handel HINTERNET yang dibuat oleh fungsi yang bergantung padanya.

fungsi yang menggunakan handel dari ftpopen dan ftpfindfirstfile

Fungsi InternetFindNextFile bergantung pada handel yang dibuat oleh FtpFindFirstFile, sementara InternetReadFile dan InternetWriteFile menggunakan handel yang dibuat oleh FtpOpenFile.

Hierarki HTTP

Diagram berikut menunjukkan hubungan fungsi yang digunakan untuk protokol HTTP. Kotak berbayang mewakili fungsi yang mengembalikan handel HINTERNET , sementara kotak biasa mewakili fungsi yang menggunakan handel HINTERNET yang dibuat oleh fungsi yang bergantung padanya.

fungsi yang menggunakan handel dari httpopenrequest

Fungsi HttpAddRequestHeaders, HttpQueryInfo, HttpSendRequest, HttpSendRequestEx, dan InternetErrorDlg bergantung pada handel yang dibuat oleh HttpOpenRequest.

Diagram berikut menunjukkan fungsi yang menggunakan handel HINTERNET yang dibuat oleh HttpOpenRequest setelah dikirim oleh HttpSendRequest. Kotak berbayang mewakili fungsi yang mengembalikan handel HINTERNET , sementara kotak biasa mewakili fungsi yang menggunakan handel HINTERNET yang dibuat oleh fungsi yang bergantung padanya.

fungsi yang menggunakan handel setelah httpsendrequest

Setelah HttpSendRequest menggunakan handel yang dikembalikan oleh HttpOpenRequest, handel tersebut dapat digunakan oleh InternetQueryDataAvailable, InternetReadFile, dan InternetSetFilePointer.

fungsi yang menggunakan handel setelah httpsendrequestex

Setelah HttpSendRequestEx menggunakan handel yang dikembalikan oleh HttpOpenRequest, handel dapat digunakan oleh HttpEndRequest, InternetReadFileEx, dan InternetWriteFile. Setelah HttpEndRequest dipanggil, handel dapat digunakan oleh InternetReadFile, InternetSetFilePointer, dan InternetQueryDataAvailable.

Catatan

WinINet tidak mendukung implementasi server. Selain itu, itu tidak boleh digunakan dari layanan. Untuk implementasi atau layanan server, gunakan Microsoft Windows HTTP Services (WinHTTP).