Funzione RetrieveUrlCacheEntryFileA (wininet.h)

Blocca il file di immissione della cache associato all'URL specificato.

Sintassi

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

Parametri

[in] lpszUrlName

Puntatore a una stringa contenente l'URL della risorsa associata alla voce della cache. Deve trattarsi di un nome univoco. La stringa del nome non deve contenere caratteri di escape.

[out] lpCacheEntryInfo

Puntatore a un buffer di informazioni sulla voce della cache. Se il buffer non è sufficiente, questa funzione restituisce ERROR_INSUFFICIENT_BUFFER e imposta lpdwCacheEntryInfoBufferSize sul numero di byte necessari.

[in, out] lpcbCacheEntryInfo

Puntatore a una variabile long integer senza segno che specifica le dimensioni del buffer lpCacheEntryInfo , in byte. Quando la funzione viene restituita, la variabile contiene le dimensioni, in byte, del buffer effettivo utilizzato o il numero di byte necessari per recuperare il file di immissione della cache. Il chiamante deve controllare il valore restituito in questo parametro. Se la dimensione restituita è minore o uguale alla dimensione passata, tutti i dati pertinenti sono stati restituiti.

[in] dwReserved

Questo parametro è riservato e deve essere 0.

Valore restituito

Restituisce TRUE se l'operazione riesce o FALSE in caso contrario. Per informazioni dettagliate sull'errore, chiamare GetLastError. I valori di errore possibili includono:

Codice restituito Descrizione
ERROR_FILE_NOT_FOUND
La voce della cache specificata dal nome di origine non viene trovata nell'archiviazione della cache.
ERROR_INSUFFICIENT_BUFFER
Le dimensioni del buffer lpCacheEntryInfo come specificato da lpdwCacheEntryInfoBufferSize non sono sufficienti per contenere tutte le informazioni. Il valore restituito in lpdwCacheEntryInfoBufferSize indica le dimensioni del buffer necessarie per ottenere tutte le informazioni.

Commenti

RetrieveUrlCacheEntryFile non esegue l'analisi degli URL, quindi un URL contenente un ancoraggio (#) non verrà trovato nella cache, anche se la risorsa viene memorizzata nella cache. Ad esempio, se l'URL http://adatum.com/example.htm#sample è stato passato, la funzione restituirà ERROR_FILE_NOT_FOUND anche se http://adatum.com/example.htm si trova nella cache.

Il file viene bloccato per il chiamante quando viene recuperato; il chiamante dovrebbe sbloccare il file dopo che il chiamante è terminato con il file. Gestione cache sblocca automaticamente i file dopo un determinato intervallo. Mentre il file è bloccato, gestione cache non rimuoverà il file dalla cache. È importante notare che questa funzione può o meno eseguire in modo efficiente, a seconda dell'implementazione interna della cache. Ad esempio, se i dati URL vengono archiviati in un file compresso contenente dati per altri URL, la cache creerà una copia dei dati in un file in una directory temporanea gestita dalla cache. La cache eliminerà infine la copia. È consigliabile usare questa funzione solo in situazioni in cui è necessario un nome file per avviare un'applicazione. La maggior parte dei casi deve essere usata da RetrieveUrlCacheEntryStream e le funzioni di flusso associate.

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

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

Nota

L'intestazione wininet.h definisce RetrieveUrlCacheEntryFile 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
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