Fungsi RetrieveUrlCacheEntryStreamA (wininet.h)

Menyediakan cara yang paling efisien dan independen implementasi untuk mengakses data cache.

Sintaks

HANDLE RetrieveUrlCacheEntryStreamA(
  [in]      LPCSTR                       lpszUrlName,
  [out]     LPINTERNET_CACHE_ENTRY_INFOA lpCacheEntryInfo,
  [in, out] LPDWORD                      lpcbCacheEntryInfo,
  [in]      BOOL                         fRandomRead,
  [in]      DWORD                        dwReserved
);

Parameter

[in] lpszUrlName

Penunjuk ke string yang dihentikan null yang berisi nama sumber entri cache. Ini harus berupa nama yang unik. String nama tidak boleh berisi karakter escape apa pun.

[out] lpCacheEntryInfo

Arahkan ke struktur INTERNET_CACHE_ENTRY_INFO yang menerima informasi tentang entri cache.

[in, out] lpcbCacheEntryInfo

Penunjuk ke variabel yang menentukan ukuran, dalam byte, dari buffer lpCacheEntryInfo . Ketika fungsi kembali, variabel menerima jumlah byte yang disalin ke buffer atau ukuran yang diperlukan, dalam byte, buffer. Perhatikan bahwa ukuran buffer ini harus mengakomodasi struktur INTERNET_CACHE_ENTRY_INFO dan string terkait yang disimpan segera setelahnya.

[in] fRandomRead

Apakah aliran terbuka untuk akses acak. Atur bendera ke TRUE untuk membuka aliran untuk akses acak.

[in] dwReserved

Parameter ini dicadangkan dan harus 0.

Nilai kembali

Jika fungsi berhasil, fungsi mengembalikan handel yang valid untuk digunakan dalam fungsi ReadUrlCacheEntryStream dan UnlockUrlCacheEntryStream .

Jika fungsi gagal, fungsi akan mengembalikan NULL. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.

Nilai kesalahan yang mungkin termasuk yang berikut ini.

Menampilkan kode Deskripsi
ERROR_FILE_NOT_FOUND
Entri cache yang ditentukan oleh nama sumber tidak ditemukan di penyimpanan cache.
ERROR_INSUFFICIENT_BUFFER
Ukuran lpCacheEntryInfo seperti yang ditentukan oleh lpdwCacheEntryInfoBufferSize tidak cukup untuk memuat semua informasi. Nilai yang dikembalikan dalam lpdwCacheEntryInfoBufferSize menunjukkan ukuran buffer yang diperlukan untuk berisi semua informasi.

Keterangan

RetrieveUrlCacheEntryStream tidak melakukan penguraian URL apa pun, sehingga URL yang berisi jangkar (#) tidak akan ditemukan di cache, meskipun sumber daya di-cache. Misalnya, jika URL http://adatum.com/example.htm#sample diteruskan, fungsi mengembalikan ERROR_FILE_NOT_FOUND bahkan jika http://adatum.com/example.htm ada di cache.

Klien cache yang tidak memerlukan data URL dalam bentuk file harus menggunakan fungsi ini untuk mengakses data untuk URL tertentu.

Seperti semua aspek lain dari Api WinINet, fungsi ini tidak dapat dipanggil dengan aman dari dalam DllMain atau konstruktor dan destruktor objek global.

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).
 

Catatan

Header wininet.h mendefinisikan RetrieveUrlCacheEntryStream sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praprosedur UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header wininet.h
Pustaka Wininet.lib
DLL Wininet.dll

Lihat juga

Penembolokan

Fungsi WinINet