Funzione CommitUrlCacheEntryA (wininet.h)

Archivia i dati nel file specificato nella cache Internet e lo associa all'URL specificato.

Sintassi

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

Parametri

[in] lpszUrlName

Puntatore a una variabile stringa contenente il nome di origine della voce della cache. La stringa del nome deve essere univoca e non deve contenere caratteri di escape.

[in] lpszLocalFileName

Puntatore a una variabile stringa contenente il nome del file locale memorizzato nella cache. Deve essere lo stesso nome restituito da CreateUrlCacheEntryA.

[in] ExpireTime

Struttura FILETIME contenente la data e l'ora di scadenza (in tempo medio di Greenwich) del file memorizzato nella cache. Se la data e l'ora di scadenza sono sconosciute, impostare questo parametro su zero.

[in] LastModifiedTime

Struttura FILETIME contenente l'ultima data e ora modificata (in tempo medio di Greenwich) dell'URL memorizzato nella cache. Se l'ultima data e ora modificata è sconosciuta, impostare questo parametro su zero.

[in] CacheEntryType

Maschera di bit che indica il tipo di voce della cache e le relative proprietà. I tipi di voce della cache includono le voci della cronologia (URLHISTORY_CACHE_ENTRY), le voci dei cookie (COOKIE_CACHE_ENTRY) e il normale contenuto memorizzato nella cache (NORMAL_CACHE_ENTRY).

Questo parametro può essere zero o più dei flag di proprietà seguenti e i flag di tipo cache elencati di seguito.

Valore Significato
COOKIE_CACHE_ENTRY
Voce della cache del cookie.
EDITED_CACHE_ENTRY
File di voce della cache modificato esternamente. Questo tipo di voce della cache è esentato dalla scavenging.
NORMAL_CACHE_ENTRY
Normale voce della cache. Può essere eliminata per recuperare spazio per nuove voci.
SPARSE_CACHE_ENTRY
Voce della cache di risposta parziale.
STICKY_CACHE_ENTRY
Voce della cache permanente. Esentata dallo scavenging.
TRACK_OFFLINE_CACHE_ENTRY
Non implementato attualmente.
TRACK_ONLINE_CACHE_ENTRY
Non implementato attualmente.
URLHISTORY_CACHE_ENTRY
Voce della cache di collegamento visitato.

[in] lpHeaderInfo

Puntatore al buffer contenente le informazioni sull'intestazione. Se questo parametro non è NULL, le informazioni sull'intestazione vengono considerate come attributi estesi dell'URL restituito nel membro lpHeaderInfo della struttura INTERNET_CACHE_ENTRY_INFO .

[in] cchHeaderInfo

Dimensioni delle informazioni sull'intestazione, in TCHARs. Se lpHeaderInfo non è NULL, questo valore viene assunto per indicare le dimensioni del buffer che archivia le informazioni sull'intestazione. Un'applicazione può gestire le intestazioni come parte dei dati e fornire cchHeaderInfo insieme a un valore NULL per lpHeaderInfo.

[in] lpszFileExtension

Questo parametro è riservato e deve essere NULL.

[in] lpszOriginalUrl

Puntatore a una stringa contenente l'URL originale, se si è verificato il reindirizzamento.

Valore restituito

Restituisce TRUE se ha esito positivo o FALSE in caso contrario. Per informazioni dettagliate sull'errore, chiamare GetLastError. Di seguito sono riportati i valori di errore possibili.

Codice restituito Descrizione
ERROR_DISK_FULL
L'archiviazione della cache è completa.
ERROR_FILE_NOT_FOUND
Il file locale specificato non viene trovato.

Commenti

Il tipo di STICKY_CACHE_ENTRY viene usato per rendere le voci della cache esentate dalla scavenging. Il tempo di esenzione predefinito per le voci impostate usando CommitUrlCacheEntryA è di dieci minuti. L'ora di esenzione può essere modificata impostando il parametro ora di scadenza nella struttura INTERNET_CACHE_ENTRY_INFO nella chiamata alla funzione SetUrlCacheEntryInfo .

Se l'archiviazione della cache è completa, CommitUrlCacheEntryA richiama la pulizia della cache per rendere spazio per questo nuovo file. Se la voce della cache esiste già, la funzione sovrascrive la voce se non è in uso. Una voce viene usata quando è stata recuperata con RetrieveUrlCacheEntryStream o RetrieveUrlCacheEntryFile.

I client che aggiungono voci alla cache devono impostare le intestazioni su almeno "HTTP/1.0 200 OK\r\n\r\n"; in caso contrario, Microsoft Internet Explorer e altre applicazioni client devono ignorare la voce.

Vedere Memorizzazione nella cache per esempio di codice che chiama CreateUrlCacheEntryA.

Come tutti gli altri aspetti dell'API WinINet, questa funzione non può essere chiamata in modo sicuro dall'interno di DllMain o dai costruttori e distruttori degli oggetti globali.

Nota WinINet non supporta le implementazioni del server. Inoltre, non deve essere usato da un servizio. Per le implementazioni o i servizi server usano Microsoft Windows HTTP Services (WinHTTP).
 

Nota

L'intestazione wininet.h definisce CommitUrlCacheEntry come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wininet.h
Libreria Wininet.lib
DLL Wininet.dll

Vedi anche

Memorizzazione nella cache

Funzioni WinINet