Bagikan melalui


Fungsi RetrieveUrlCacheEntryFileA (wininet.h)

Mengunci file entri cache yang terkait dengan URL yang ditentukan.

Sintaks

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

Parameter

[in] lpszUrlName

Penunjuk ke string yang berisi URL sumber daya yang terkait dengan entri cache. Ini harus berupa nama yang unik. String nama tidak boleh berisi karakter escape apa pun.

[out] lpCacheEntryInfo

Penunjuk ke buffer informasi entri cache. Jika buffer tidak cukup, fungsi ini mengembalikan ERROR_INSUFFICIENT_BUFFER dan mengatur lpdwCacheEntryInfoBufferSize ke jumlah byte yang diperlukan.

[in, out] lpcbCacheEntryInfo

Penunjuk ke variabel bilangan buffer panjang yang tidak ditandatangani yang menentukan ukuran buffer lpCacheEntryInfo , dalam byte. Ketika fungsi kembali, variabel berisi ukuran, dalam byte, dari buffer aktual yang digunakan atau jumlah byte yang diperlukan untuk mengambil file entri cache. Pemanggil harus memeriksa nilai yang dikembalikan dalam parameter ini. Jika ukuran pengembalian kurang dari atau sama dengan ukuran yang diteruskan, semua data yang relevan telah dikembalikan.

[in] dwReserved

Parameter ini dicadangkan dan harus 0.

Nilai kembali

Mengembalikan TRUE jika berhasil, atau FALSE sebaliknya. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError. Kemungkinan nilai kesalahan meliputi:

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

Keterangan

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

File dikunci untuk penelepon ketika diambil; pemanggil harus membuka kunci file setelah pemanggil selesai dengan file. Manajer cache secara otomatis membuka kunci file setelah interval tertentu. Saat file dikunci, manajer cache tidak akan menghapus file dari cache. Penting untuk dicatat bahwa fungsi ini mungkin atau mungkin tidak berkinerja efisien, tergantung pada implementasi internal cache. Misalnya, jika data URL disimpan dalam file yang dikemas yang berisi data untuk URL lain, cache akan membuat salinan data ke file dalam direktori sementara yang dikelola oleh cache. Cache pada akhirnya akan menghapus salinan. Disarankan agar fungsi ini hanya digunakan dalam situasi di mana nama file diperlukan untuk meluncurkan aplikasi. RetrieveUrlCacheEntryStream dan fungsi aliran terkait harus digunakan dalam banyak kasus.

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 RetrieveUrlCacheEntryFile sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praprosesor 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

Persyaratan Nilai
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