Fungsi CommitUrlCacheEntryA (wininet.h)

Menyimpan data dalam file yang ditentukan di cache Internet dan mengaitkannya dengan URL yang ditentukan.

Sintaks

BOOL CommitUrlCacheEntryA(
  [in] LPCSTR   lpszUrlName,
  [in] LPCSTR   lpszLocalFileName,
  [in] FILETIME ExpireTime,
  [in] FILETIME LastModifiedTime,
  [in] DWORD    CacheEntryType,
  [in] LPBYTE   lpHeaderInfo,
  [in] DWORD    cchHeaderInfo,
  [in] LPCSTR   lpszFileExtension,
  [in] LPCSTR   lpszOriginalUrl
);

Parameter

[in] lpszUrlName

Penunjuk ke variabel string yang berisi nama sumber entri cache. String nama harus unik dan tidak boleh berisi karakter escape apa pun.

[in] lpszLocalFileName

Penunjuk ke variabel string yang berisi nama file lokal yang sedang di-cache. Nama ini harus sama dengan yang dikembalikan oleh CreateUrlCacheEntryA.

[in] ExpireTime

Struktur FILETIME yang berisi tanggal dan waktu kedaluwarsa (dalam waktu rata-rata Greenwich) file yang sedang di-cache. Jika tanggal dan waktu kedaluwarsa tidak diketahui, atur parameter ini ke nol.

[in] LastModifiedTime

Struktur FILETIME yang berisi tanggal dan waktu terakhir yang dimodifikasi (dalam waktu rata-rata Greenwich) dari URL yang sedang di-cache. Jika tanggal dan waktu terakhir yang diubah tidak diketahui, atur parameter ini ke nol.

[in] CacheEntryType

Bitmask yang menunjukkan jenis entri cache dan propertinya. Jenis entri cache meliputi: entri riwayat (URLHISTORY_CACHE_ENTRY), entri cookie (COOKIE_CACHE_ENTRY), dan konten cache normal (NORMAL_CACHE_ENTRY).

Parameter ini dapat berupa nol atau lebih dari bendera properti berikut, dan bendera jenis cache yang tercantum di bawah ini.

Nilai Makna
COOKIE_CACHE_ENTRY
Entri cache cookie.
EDITED_CACHE_ENTRY
File entri cache yang telah diedit secara eksternal. Jenis entri cache ini dikecualikan dari pemulungan.
NORMAL_CACHE_ENTRY
Entri cache normal; dapat dihapus untuk memulihkan ruang untuk entri baru.
SPARSE_CACHE_ENTRY
Entri cache respons parsial.
STICKY_CACHE_ENTRY
Entri cache lengket; dikecualikan dari memulung.
TRACK_OFFLINE_CACHE_ENTRY
Saat ini tidak diimplementasikan.
TRACK_ONLINE_CACHE_ENTRY
Saat ini tidak diimplementasikan.
URLHISTORY_CACHE_ENTRY
Entri cache tautan yang dikunjungi.

[in] lpHeaderInfo

Penunjuk ke buffer yang berisi informasi header. Jika parameter ini bukan NULL, informasi header diperlakukan sebagai atribut url yang diperluas yang dikembalikan dalam anggota lpHeaderInfo dari struktur INTERNET_CACHE_ENTRY_INFO .

[in] cchHeaderInfo

Ukuran informasi header, dalam TCHAR. Jika lpHeaderInfo bukan NULL, nilai ini diasumsikan untuk menunjukkan ukuran buffer yang menyimpan informasi header. Aplikasi dapat mempertahankan header sebagai bagian dari data dan menyediakan cchHeaderInfo bersama dengan nilai NULL untuk lpHeaderInfo.

[in] lpszFileExtension

Parameter ini dicadangkan dan harus NULL.

[in] lpszOriginalUrl

Penunjuk ke string yang berisi URL asli, jika pengalihan telah terjadi.

Mengembalikan nilai

Mengembalikan TRUE jika berhasil, atau FALSE sebaliknya. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError. Berikut ini adalah kemungkinan nilai kesalahan.

Menampilkan kode Deskripsi
ERROR_DISK_FULL
Penyimpanan cache penuh.
ERROR_FILE_NOT_FOUND
File lokal yang ditentukan tidak ditemukan.

Keterangan

Jenis STICKY_CACHE_ENTRY digunakan untuk membuat entri cache dikecualikan dari pemulungan. Waktu pengecualian default untuk entri yang diatur menggunakan CommitUrlCacheEntryA adalah sepuluh menit. Waktu yang dikecualikan dapat diubah dengan mengatur parameter waktu kedaluwarsa dalam struktur INTERNET_CACHE_ENTRY_INFO dalam panggilan ke fungsi SetUrlCacheEntryInfo .

Jika penyimpanan cache penuh, CommitUrlCacheEntryA memanggil pembersihan cache untuk membuat ruang untuk file baru ini. Jika entri cache sudah ada, fungsi akan menimpa entri jika tidak digunakan. Entri sedang digunakan ketika telah diambil dengan RetrieveUrlCacheEntryStream atau RetrieveUrlCacheEntryFile.

Klien yang menambahkan entri ke cache harus mengatur header ke setidaknya "HTTP/1.0 200 OK\r\n\r\n"; jika tidak, Microsoft Internet Explorer dan aplikasi klien lainnya harus mengacaukan entri.

Lihat Penembolokan misalnya kode memanggil CreateUrlCacheEntryA.

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