Share via


RetrieveUrlCacheEntryFileW-Funktion (wininet.h)

Sperrt die Cacheeintragsdatei, die der angegebenen URL zugeordnet ist.

Syntax

BOOL RetrieveUrlCacheEntryFileW(
  [in]      LPCWSTR                      lpszUrlName,
  [out]     LPINTERNET_CACHE_ENTRY_INFOW 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 darf 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 Long-Integer ohne Vorzeichen, die die Größe des lpCacheEntryInfo-Puffers in Byte 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 erfolgreich, 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 von lpdwCacheEntryInfoBufferSize angegeben, 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, die einen Anker (#) enthält, nicht im Cache gefunden wird, auch wenn die Ressource zwischengespeichert ist. 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 abhängig von der internen Implementierung des Caches effizient ausgeführt werden kann oder nicht. Wenn die URL-Daten für instance in einer gepackten Datei gespeichert sind, 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 schließlich die Kopie. 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 verwendet werden. Verwenden Sie für Serverimplementierungen oder Dienste Microsoft Windows HTTP Services (WinHTTP).
 

Hinweis

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

Anforderungen

   
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