CreateUrlCacheEntryA, fonction (wininet.h)

Crée un nom de fichier local pour enregistrer l’entrée de cache en fonction de l’URL spécifiée et de l’extension de nom de fichier.

Syntaxe

BOOL CreateUrlCacheEntryA(
  [in]  LPCSTR lpszUrlName,
  [in]  DWORD  dwExpectedFileSize,
  [in]  LPCSTR lpszFileExtension,
  [out] LPSTR  lpszFileName,
  [in]  DWORD  dwReserved
);

Paramètres

[in] lpszUrlName

Pointeur vers une valeur de chaîne qui contient le nom de l’URL. La chaîne doit contenir une valeur ; une chaîne vide entraîne l’échec de CreateUrlCacheEntry . En outre, la chaîne ne doit pas contenir de caractères d’échappement.

[in] dwExpectedFileSize

Taille attendue du fichier nécessaire pour stocker les données qui correspondent à l’entité source, dans les TCHAR. Si la taille attendue est inconnue, définissez cette valeur sur zéro.

[in] lpszFileExtension

Pointeur vers une valeur de chaîne qui contient un nom d’extension du fichier dans le stockage local.

[out] lpszFileName

Pointeur vers une mémoire tampon qui reçoit le nom du fichier. La mémoire tampon doit être suffisamment grande pour stocker le chemin d’accès du fichier créé (au moins MAX_PATH caractères).

[in] dwReserved

Ce paramètre est réservé et doit être 0.

Valeur retournée

Si la fonction réussit, la fonction retourne TRUE.

Si la fonction échoue, elle retourne FALSE. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

Une fois CreateUrlCacheEntry appelé, l’application peut écrire directement dans le fichier dans le stockage local. Lorsque le fichier est entièrement reçu, l’appelant doit appeler CommitUrlCacheEntry pour valider l’entrée dans le cache.

WinINet tente de décoder les paramètres Unicode en fonction de la page de code système. Les applications doivent s’assurer que les paramètres Unicode sont correctement encodés pour la page de code système. Les applications peuvent définir la page de code système avec InternetSetOption , comme indiqué dans l’exemple de code suivant :

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

Si le paramètre Unicode n’est pas correctement encodé dans la page de code système, WinINet tente le décodage UTF8.

Lorsque des éléments sont récupérés à partir du cache, la page de code système utilisée pour placer l’élément dans le cache doit correspondre à la page de code système actuelle de l’utilisateur. Pour les applications exécutées sous IE6 et les versions antérieures, si le décodage de la page de code système échoue, WinINet tente le décodage UTF8.

Comme tous les autres aspects de l’API WinINet, cette fonction ne peut pas être appelée en toute sécurité à partir de DllMain ou des constructeurs et destructeurs d’objets globaux.

Note WinINet ne prend pas en charge les implémentations de serveur. En outre, il ne doit pas être utilisé à partir d’un service. Pour les implémentations de serveur ou les services, utilisez Microsoft Windows HTTP Services (WinHTTP).
 

Notes

L’en-tête wininet.h définit CreateUrlCacheEntry comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête wininet.h
Bibliothèque Wininet.lib
DLL Wininet.dll

Voir aussi

Mise en cache

CommitUrlCacheEntry

Fonctions WinINet