Freigeben über


CreateUrlCacheEntryW-Funktion (wininet.h)

Erstellt einen lokalen Dateinamen zum Speichern des Cacheeintrags basierend auf der angegebenen URL und der Dateinamenerweiterung.

Syntax

BOOL CreateUrlCacheEntryW(
  [in]  LPCWSTR lpszUrlName,
  [in]  DWORD   dwExpectedFileSize,
  [in]  LPCWSTR lpszFileExtension,
  [out] LPWSTR  lpszFileName,
  [in]  DWORD   dwReserved
);

Parameter

[in] lpszUrlName

Zeigen Sie auf einen Zeichenfolgenwert, der den Namen der URL enthält. Die Zeichenfolge muss einen Wert enthalten; eine leere Zeichenfolge bewirkt, dass CreateUrlCacheEntry fehlschlägt. Darüber hinaus darf die Zeichenfolge keine Escapezeichen enthalten.

[in] dwExpectedFileSize

Erwartete Größe der Datei, die zum Speichern der Daten erforderlich ist, die der Quellentität entsprechen, in TCHARs. Wenn die erwartete Größe unbekannt ist, legen Sie diesen Wert auf Null fest.

[in] lpszFileExtension

Zeigen Sie auf einen Zeichenfolgenwert, der einen Erweiterungsnamen der Datei im lokalen Speicher enthält.

[out] lpszFileName

Zeigen Sie auf einen Puffer, der den Dateinamen empfängt. Der Puffer sollte groß genug sein, um den Pfad der erstellten Datei zu speichern (mindestens MAX_PATH Zeichen länge).

[in] dwReserved

Dieser Parameter ist reserviert und muss 0 sein.

Rückgabewert

Wenn die Funktion erfolgreich ist, gibt die Funktion TRUEzurück.

Wenn die Funktion fehlschlägt, wird FALSE-zurückgegeben. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Bemerkungen

Nachdem CreateUrlCacheEntry- aufgerufen wurde, kann die Anwendung direkt in die Datei im lokalen Speicher schreiben. Wenn die Datei vollständig empfangen wird, sollte der Aufrufer CommitUrlCacheEntry- aufrufen, um den Eintrag im Cache zu übernehmen.

WinINet versucht, Unicode-Parameter entsprechend der Systemcodeseite zu decodieren. Anwendungen sollten sicherstellen, dass Unicode-Parameter für die Systemcodeseite ordnungsgemäß codiert sind. Anwendungen können die Systemcodeseite mit InternetSetOption- festlegen, wie im folgenden Codebeispiel gezeigt:

DWORD CP_SHIFT_JIS = 932;  // ANSI/OEM  Japanese, Shift-JIS
InternetSetOption( hRequest, 
                   INTERNET_OPTION_CODEPAGE,
                   &CP_SHIFT_JIS,
                   sizeof(DWORD) );

Wenn der Unicode-Parameter nicht ordnungsgemäß auf der Systemcodeseite codiert ist, versucht WinINet UTF8-Decodierung.

Wenn Elemente aus dem Cache abgerufen werden, muss die Systemcodeseite, die zum Platzieren des Elements im Cache verwendet wurde, mit der aktuellen Systemcodeseite für den Benutzer übereinstimmen. Bei Anwendungen, die unter IE6 und früher ausgeführt werden, wenn die Decodierung für die Systemcodeseite fehlschlägt, versucht WinINet UTF8-Decodierung.

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

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

Anmerkung

Der wininet.h-Header definiert CreateUrlCacheEntry 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 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

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- wininet.h
Library Wininet.lib
DLL- Wininet.dll

Siehe auch

Zwischenspeichern

CommitUrlCacheEntry-

WinINet-Funktionen