Partager via


Fonction InternetCombineUrlW (wininet.h)

Combine une URL de base et une URL relative en une seule URL. L’URL résultante est canonique (voir InternetCanonicalizeUrl).

Syntaxe

BOOL InternetCombineUrlW(
  [in]      LPCWSTR lpszBaseUrl,
  [in]      LPCWSTR lpszRelativeUrl,
  [out]     LPWSTR  lpszBuffer,
  [in, out] LPDWORD lpdwBufferLength,
  [in]      DWORD   dwFlags
);

Paramètres

[in] lpszBaseUrl

Pointeur vers une chaîne terminée par null qui contient l’URL de base.

[in] lpszRelativeUrl

Pointeur vers une chaîne terminée par null qui contient l’URL relative.

[out] lpszBuffer

Pointeur vers une mémoire tampon qui reçoit l’URL combinée.

[in, out] lpdwBufferLength

Pointeur vers une variable qui contient la taille de la mémoire tampon lpszBuffer , en caractères. Si la fonction réussit, ce paramètre reçoit la taille de l’URL combinée, en caractères, sans inclure le caractère de fin null. Si la fonction échoue, ce paramètre reçoit la taille de la mémoire tampon requise, en caractères (y compris le caractère de fin null).

[in] dwFlags

Contrôle le fonctionnement de la fonction . Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
ICU_BROWSER_MODE
N’encode pas ni ne décode les caractères après « # » ou « ? », et ne supprime pas les espaces blancs de fin après « ? ». Si cette valeur n’est pas spécifiée, l’URL entière est encodée et l’espace blanc de fin est supprimé.
ICU_DECODE
Convertit toutes les séquences %XX en caractères, y compris les séquences d’échappement, avant l’analyse de l’URL.
ICU_ENCODE_PERCENT
Encode tous les signes de pourcentage rencontrés. Par défaut, les signes de pourcentage ne sont pas encodés. Cette valeur est disponible dans Microsoft Internet Explorer 5 et versions ultérieures.
ICU_ENCODE_SPACES_ONLY
Encode uniquement les espaces.
ICU_NO_ENCODE
Ne convertit pas les caractères non sécurisés en séquences d’échappement.
ICU_NO_META
Ne supprime pas les séquences de métadonnées (telles que « » et « . . ») de l’URL.

Valeur retournée

Retourne TRUE en cas de réussite, ou FALSE dans le cas contraire. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError. Les erreurs possibles sont les suivantes.

Code de retour Description
ERROR_BAD_PATHNAME
Impossible de combiner les URL.
ERROR_INSUFFICIENT_BUFFER
La mémoire tampon fournie à la fonction était insuffisante ou NULL. La valeur indiquée par le paramètre lpdwBufferLength contient le nombre d’octets requis pour contenir l’URL combinée.
ERROR_INTERNET_INVALID_URL
Le format de l’URL n’est pas valide.
ERROR_INVALID_PARAMETER
Il existe un paramètre de chaîne, de mémoire tampon, de taille de mémoire tampon ou d’indicateur non valide.

Remarques

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 InternetCombineUrl comme 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. La combinaison 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

   
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

Gestion des localisateurs de ressources uniformes

Fonctions WinINet