Funzione CommitUrlCacheEntryA (wininet.h)
Archivia i dati nel file specificato nella cache Internet e li 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 che contiene la data e l'ora di scadenza (in ora media 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 la data e l'ora dell'ultima modifica (in ora di Greenwich) dell'URL memorizzato nella cache. Se la data e l'ora dell'ultima modifica sono sconosciute, 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: voci di cronologia (URLHISTORY_CACHE_ENTRY), voci di cookie (COOKIE_CACHE_ENTRY) e contenuto normale memorizzato nella cache (NORMAL_CACHE_ENTRY).
Questo parametro può essere zero o più dei flag di proprietà seguenti e i flag del tipo di cache elencati di seguito.
Valore | Significato |
---|---|
|
Voce della cache dei cookie. |
|
File di immissione della cache modificato esternamente. Questo tipo di voce della cache è esente da scavenging. |
|
Voce di cache normale; può essere eliminato per recuperare spazio per le nuove voci. |
|
Voce della cache di risposta parziale. |
|
Voce della cache permanente; esente da scavenging. |
|
Attualmente non implementato. |
|
Attualmente non implementato. |
|
Voce della cache dei collegamenti visitata. |
[in] lpHeaderInfo
Puntatore al buffer che contiene le informazioni sull'intestazione. Se questo parametro non è NULL, le informazioni sull'intestazione vengono considerate come attributi estesi dell'URL restituiti nel lpHeaderInfo membro della struttura INTERNET_CACHE_ENTRY_INFO.
[in] cchHeaderInfo
Dimensioni delle informazioni sull'intestazione, in TCHAR. Se lpHeaderInfo non è null, si presuppone che questo valore indichi le dimensioni del buffer in cui sono archiviate 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 in caso di esito positivo oppure FALSE in caso contrario. Per ottenere informazioni estese sull'errore, chiamare GetLastError. Di seguito sono riportati i possibili valori di errore.
Codice restituito | Descrizione |
---|---|
|
L'archiviazione della cache è piena. |
|
Il file locale specificato non viene trovato. |
Osservazioni
Il tipo STICKY_CACHE_ENTRY viene usato per rendere le voci della cache esentate dallo scavenging. Il tempo di esenzione predefinito per le voci impostate usando CommitUrlCacheEntryA è di dieci minuti. L'ora esentata può essere modificata impostando il parametro time di scadenza nella struttura INTERNET_CACHE_ENTRY_INFO nella chiamata alla funzione SetUrlCacheEntryInfo.
Se l'archiviazione della cache è piena, CommitUrlCacheEntryA richiama la pulizia della cache per creare spazio per questo nuovo file. Se la voce della cache esiste già, la funzione sovrascrive la voce se non è in uso. Una voce è in uso 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 un 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 di oggetti globali.
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 del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 2000 Professional [solo app desktop] |
server minimo supportato | Windows 2000 Server [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
wininet.h |
libreria |
Wininet.lib |
dll | Wininet.dll |