Partager via


InternetCrackUrlA, fonction (wininet.h)

Fissure une URL dans ses composants.

Syntaxe

BOOL InternetCrackUrlA(
  [in]      LPCSTR            lpszUrl,
  [in]      DWORD             dwUrlLength,
  [in]      DWORD             dwFlags,
  [in, out] LPURL_COMPONENTSA lpUrlComponents
);

Paramètres

[in] lpszUrl

Pointeur vers une chaîne qui contient l’URL canonique à fissurer.

[in] dwUrlLength

Taille de la chaîne lpszUrl, dans TCHARs, ou zéro si lpszUrl est une chaîne ASCIIZ.

[in] dwFlags

Contrôle l’opération. Ce paramètre peut être l’une des valeurs suivantes.

Valeur Signification
ICU_DECODE
Convertit les caractères encodés dans leur forme normale. Cela ne peut être utilisé que si l’utilisateur fournit des mémoires tampons dans la structure URL_COMPONENTS pour copier les composants.
ICU_ESCAPE
Convertit toutes les séquences d’échappement (%xx) en leurs caractères correspondants. Cela ne peut être utilisé que si l’utilisateur fournit des mémoires tampons dans la structure URL_COMPONENTS pour copier les composants.

[in, out] lpUrlComponents

Pointeur vers une structure URL_COMPONENTS qui reçoit les composants d’URL.

Valeur de retour

Retourne TRUE si la fonction réussit, ou FALSE sinon. Pour obtenir des informations d’erreur étendues, appelez GetLastError.

Remarques

Les composants requis sont indiqués par les membres de la structure URL_COMPONENTS. Chaque composant a un pointeur vers la valeur et a un membre qui stocke la longueur de la valeur stockée. Si la valeur et la longueur d’un composant sont égales à zéro, ce composant n’est pas retourné. Windows Vista et versions ultérieures. : Si le pointeur vers la valeur du composant est NULL et que la valeur de son membre de longueur correspondante n’est pas nulle, l’adresse du premier caractère du composant correspondant dans la chaîne lpszUrl est stockée dans le pointeur et la longueur du composant est stockée dans le membre de longueur.

Si le pointeur contient l’adresse de la mémoire tampon fournie par l’utilisateur, le membre de longueur doit contenir la taille de la mémoire tampon. InternetCrackUrl copie le composant dans la mémoire tampon, et le membre de longueur est défini sur la longueur du composant copié, moins 1 pour la fin de chaîne de fin de fin.

Pour que InternetCrackUrl fonctionne correctement, la taille de la structure URL_COMPONENTS, en octets, doit être stockée dans le membre dwStructSize.

Remarque N’utilisez pas internetCrackUrl sur les URL « file:// » qui contiennent des espaces, car la valeur retournée dans le dwUrlPathLength membre de la structure URL_COMPONENTS pointée par lpUrlComponents est trop grande. Cela n’est toutefois que le cas avec des URL « file:// » qui contiennent des caractères d’espace.

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.

Remarque 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).
 

Note

L’en-tête wininet.h définit InternetCrackUrl 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. 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.

Exigences

Exigence Valeur
client minimum pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
serveur minimum pris en charge Windows 2000 Server [applications de bureau uniquement]
plateforme cible Windows
d’en-tête wininet.h
bibliothèque Wininet.lib
DLL Wininet.dll

Voir aussi

FtpOpenFile

gestion des localisateurs de ressources uniformes

InternetCloseHandle

internetFindNextFile

InternetSetStatusCallback

fonctions WinINet