Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mengunci file entri cache yang terkait dengan URL yang ditentukan.
Sintaksis
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
Pointer ke variabel bilangan buffer panjang yang tidak ditandatangani yang menentukan ukuran lpCacheEntryInfo buffer, 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 pengembalian 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.
Mengembalikan nilai
Mengembalikan TRUE jika berhasil, atau FALSE sebaliknya. Untuk mendapatkan informasi kesalahan yang diperluas, panggil GetLastError. Kemungkinan nilai kesalahan meliputi:
| Mengembalikan kode | Deskripsi |
|---|---|
|
Entri cache yang ditentukan oleh nama sumber tidak ditemukan di penyimpanan cache. |
|
Ukuran buffer lpCacheEntryInfo seperti yang ditentukan oleh lpdwCacheEntryInfoBufferSize tidak cukup untuk berisi semua informasi. Nilai yang dikembalikan dalam lpdwCacheEntryInfoBufferSize menunjukkan ukuran buffer yang diperlukan untuk mendapatkan semua informasi. |
Komentar
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 meskipun http://adatum.com/example.htm berada 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 kemasan yang berisi data untuk URL lain, cache akan membuat salinan data ke file di 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.
Nota
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
| Syarat | Nilai |
|---|---|
| klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
| server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
| Platform Target |
Windows |
| Header |
wininet.h |
| Pustaka |
Wininet.lib |
| DLL |
Wininet.dll |
Lihat juga
penembolokan
Fungsi WinINet