Freigeben über


CommitUrlCacheEntryA-Funktion (wininet.h)

Speichert Daten in der angegebenen Datei im Internetcache und ordnet sie der angegebenen URL zu.

Syntax

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

Parameter

[in] lpszUrlName

Zeiger auf eine Zeichenfolgenvariable, die den Quellnamen des Cacheeintrags enthält. Die Namenszeichenfolge muss eindeutig sein und darf keine Escapezeichen enthalten.

[in] lpszLocalFileName

Zeiger auf eine Zeichenfolgenvariable, die den Namen der lokalen Datei enthält, die zwischengespeichert wird. Dies sollte derselbe Name wie der von CreateUrlCacheEntryA zurückgegebene sein.

[in] ExpireTime

FILETIME-Struktur , die das Ablaufdatum und die Ablaufzeit (in Greenwich Mean Time) der zwischengespeicherten Datei enthält. Wenn das Ablaufdatum und die Ablaufzeit unbekannt sind, legen Sie diesen Parameter auf 0 fest.

[in] LastModifiedTime

FILETIME-Struktur , die das Datum und die Uhrzeit der letzten Änderung (in Greenwich-Mittelzeit) der ZWISCHENGESPEICHERTEN URL enthält. Wenn Datum und Uhrzeit der letzten Änderung unbekannt sind, legen Sie diesen Parameter auf 0 fest.

[in] CacheEntryType

Eine Bitmaske, die den Typ des Cacheeintrags und seine Eigenschaften angibt. Die Cacheeintragstypen umfassen: Verlaufseinträge (URLHISTORY_CACHE_ENTRY), Cookieeinträge (COOKIE_CACHE_ENTRY) und normale zwischengespeicherte Inhalte (NORMAL_CACHE_ENTRY).

Dieser Parameter kann mindestens null der folgenden Eigenschaftsflags und Cachetypflags sein, die unten aufgeführt sind.

Wert Bedeutung
COOKIE_CACHE_ENTRY
Cacheeintrag für Cookies.
EDITED_CACHE_ENTRY
Cacheeintragsdatei, die extern bearbeitet wurde. Dieser Cacheeintragstyp ist vom Auffangen ausgenommen.
NORMAL_CACHE_ENTRY
Normaler Cacheeintrag, der gelöscht werden kann, um Speicherplatz für neue Einträge freizugeben.
SPARSE_CACHE_ENTRY
Cacheeintrag für Teilantworten.
STICKY_CACHE_ENTRY
Cacheeintrag für Kurznotizen, von der Löschung ausgenommen.
TRACK_OFFLINE_CACHE_ENTRY
Derzeit nicht implementiert.
TRACK_ONLINE_CACHE_ENTRY
Derzeit nicht implementiert.
URLHISTORY_CACHE_ENTRY
Cacheeintrag für besuchte Links.

[in] lpHeaderInfo

Zeiger auf den Puffer, der die Headerinformationen enthält. Wenn dieser Parameter nicht NULL ist, werden die Headerinformationen als erweiterte Attribute der URL behandelt, die im lpHeaderInfo-Member der INTERNET_CACHE_ENTRY_INFO-Struktur zurückgegeben werden.

[in] cchHeaderInfo

Größe der Headerinformationen in TCHARs. Wenn lpHeaderInfo nicht NULL ist, wird davon ausgegangen, dass dieser Wert die Größe des Puffers angibt, in dem die Headerinformationen gespeichert werden. Eine Anwendung kann Header als Teil der Daten verwalten und cchHeaderInfo zusammen mit einem NULL-Wert für lpHeaderInfo bereitstellen.

[in] lpszFileExtension

Dieser Parameter ist reserviert und muss NULL sein.

[in] lpszOriginalUrl

Zeiger auf eine Zeichenfolge, die die ursprüngliche URL enthält, wenn eine Umleitung erfolgt ist.

Rückgabewert

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

Rückgabecode Beschreibung
ERROR_DISK_FULL
Der Cachespeicher ist voll.
ERROR_FILE_NOT_FOUND
Die angegebene lokale Datei wurde nicht gefunden.

Hinweise

Der STICKY_CACHE_ENTRY Typs wird verwendet, um Cacheeinträge vom Abfangen ausgenommen zu machen. Die standardmäßige Ausnahmezeit für Einträge, die mithilfe von CommitUrlCacheEntryA festgelegt werden, beträgt zehn Minuten. Die Ausnahmezeit kann geändert werden, indem sie den Ablaufzeitparameter in der INTERNET_CACHE_ENTRY_INFO-Struktur im Aufruf der SetUrlCacheEntryInfo-Funktion festlegen.

Wenn der Cachespeicher voll ist, ruft CommitUrlCacheEntryA die Cachebereinigung auf, um Speicherplatz für diese neue Datei zu schaffen. Wenn der Cacheeintrag bereits vorhanden ist, überschreibt die Funktion den Eintrag, wenn er nicht verwendet wird. Ein Eintrag wird verwendet, wenn er mit RetrieveUrlCacheEntryStream oder RetrieveUrlCacheEntryFile abgerufen wurde.

Clients, die dem Cache Einträge hinzufügen, sollten die Header mindestens auf "HTTP/1.0 200 OK\r\n\r\n" festlegen. Andernfalls sollten Microsoft Internet Explorer und andere Clientanwendungen den Eintrag ignorieren.

Unter Zwischenspeichern finden Sie Beispielcode, der CreateUrlCacheEntryA aufruft.

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 CommitUrlCacheEntry 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 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

   
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