Freigeben über


RetrieveUrlCacheEntryFileA-Funktion (wininet.h)

Sperrt die Cacheeintragsdatei, die der angegebenen URL zugeordnet ist.

Syntax

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

Parameter

[in] lpszUrlName

Zeiger auf eine Zeichenfolge, die die URL der Ressource enthält, die dem Cacheeintrag zugeordnet ist. Dieser Name muss eindeutig sein. Die Namenszeichenfolge sollte keine Escapezeichen enthalten.

[out] lpCacheEntryInfo

Zeiger auf einen Cacheeintragsinformationspuffer. Wenn der Puffer nicht ausreicht, gibt diese Funktion ERROR_INSUFFICIENT_BUFFER zurück und legt lpdwCacheEntryInfoBufferSize auf die Anzahl der erforderlichen Bytes fest.

[in, out] lpcbCacheEntryInfo

Zeiger auf eine variable lange Ganzzahl ohne Vorzeichen, die die Größe des puffers lpCacheEntryInfo in Bytes angibt. Wenn die Funktion zurückgibt, enthält die Variable die Größe des tatsächlich verwendeten Puffers in Bytes oder die Anzahl der Bytes, die zum Abrufen der Cacheeintragsdatei erforderlich sind. Der Aufrufer sollte den Rückgabewert in diesem Parameter überprüfen. Wenn die Rückgabegröße kleiner oder gleich der übergebenen Größe ist, wurden alle relevanten Daten zurückgegeben.

[in] dwReserved

Dieser Parameter ist reserviert und muss 0 sein.

Rückgabewert

Gibt TRUE zurück, wenn der Vorgang erfolgreich war, oder andernfalls FALSE . Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf. Mögliche Fehlerwerte sind:

Rückgabecode Beschreibung
ERROR_FILE_NOT_FOUND
Der durch den Quellnamen angegebene Cacheeintrag wird im Cachespeicher nicht gefunden.
ERROR_INSUFFICIENT_BUFFER
Die größe des lpCacheEntryInfo-Puffers , wie sie von lpdwCacheEntryInfoBufferSize angegeben wird, reicht nicht aus, um alle Informationen zu enthalten. Der in lpdwCacheEntryInfoBufferSize zurückgegebene Wert gibt die Puffergröße an, die zum Abrufen aller Informationen erforderlich ist.

Hinweise

RetrieveUrlCacheEntryFile führt keine URL-Analyse durch, sodass eine URL mit einem Anker (#) nicht im Cache gefunden wird, auch wenn die Ressource zwischengespeichert wird. Wenn die URL http://adatum.com/example.htm#sample beispielsweise übergeben wurde, gibt die Funktion ERROR_FILE_NOT_FOUND zurück, auch wenn http://adatum.com/example.htm sich im Cache befindet.

Die Datei ist für den Aufrufer gesperrt, wenn sie abgerufen wird. Der Aufrufer sollte die Datei entsperren, nachdem der Aufrufer mit der Datei fertig ist. Der Cache-Manager entsperrt die Dateien nach einem bestimmten Intervall automatisch. Während die Datei gesperrt ist, entfernt der Cache-Manager die Datei nicht aus dem Cache. Es ist wichtig zu beachten, dass diese Funktion je nach interner Implementierung des Caches effizient funktioniert oder nicht. Wenn die URL-Daten für instance in einer gepackten Datei gespeichert werden, die Daten für andere URLs enthält, erstellt der Cache eine Kopie der Daten in eine Datei in einem temporären Verzeichnis, das vom Cache verwaltet wird. Der Cache löscht die Kopie schließlich. Es wird empfohlen, diese Funktion nur in Situationen zu verwenden, in denen ein Dateiname zum Starten einer Anwendung erforderlich ist. RetrieveUrlCacheEntryStream und zugehörige Streamfunktionen sollten in den meisten Fällen verwendet werden.

Wie alle anderen Aspekte der WinINet-API kann diese Funktion nicht sicher innerhalb von DllMain oder den Konstruktoren und Destruktoren globaler Objekte aufgerufen werden.

Hinweis WinINet unterstützt keine Serverimplementierungen. Darüber hinaus sollte es nicht von einem Dienst aus verwendet werden. Verwenden Sie für Serverimplementierungen oder Dienste Microsoft Windows HTTP Services (WinHTTP).
 

Hinweis

Der wininet.h-Header definiert RetrieveUrlCacheEntryFile als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile wininet.h
Bibliothek Wininet.lib
DLL Wininet.dll

Weitere Informationen

Zwischenspeichern

WinINet-Funktionen