Partager via


macro NetAddr_GetAddress (shellapi.h)

Indique si une adresse réseau est conforme à un type et un format spécifiés.

Syntaxe

HRESULT NetAddr_GetAddress(
             HWND hwnd,
  [in, out]  LPARAM pv
);

Paramètres

hwnd

Handle vers le contrôle d’adresse réseau qui contient l’adresse à valider.

[in, out] pv

Pointeur vers une structure NC_ADDRESS pour recevoir des informations d’adresse réseau sous forme analysée, si le format d’adresse et le type du contrôle spécifiés par hwnd sont validés. L’application appelante est chargée d’allouer la mémoire pour cette structure.

Valeur retournée

Type : HRESULT

Retourne l’une des valeurs suivantes de type HRESULT :

  • E_INVALIDARG : l’application appelante n’a pas pu allouer une structure de NC_ADDRESS .
  • ERROR_INSUFFICIENT_BUFFER : la mémoire tampon de sortie est trop petite pour contenir l’adresse réseau analysée.
  • ERROR_INVALID_PARAMETER : la chaîne d’adresse réseau n’est pas d’un type spécifié.
  • ERROR_SUCCESS - L’opération a réussi.
  • S_FALSE : il n’existe aucune adresse dans le contrôle d’adresse réseau à valider.

Remarques

Utilisez la macro NetAddr_GetAddress pour valider une adresse réseau dans un contrôle d’adresse réseau par rapport à un masque de type d’adresse réseau prédéfini. Pour instancier, utilisez la classe msctls_netaddress définie dans Shellapi.h. Appelez InitNetworkAddressControl au moment de l’exécution avant d’appeler cette macro. Cela initialise la bibliothèque de contrôles courants qui contient le contrôle d’adresse réseau.

Cette macro obtient la chaîne d’adresse réseau à partir d’un contrôle d’adresse réseau, analyse la chaîne et vérifie si la chaîne correspond à un masque de type d’adresse réseau. Si la chaîne correspond au masque, la fonction retourne S_OK et retourne la chaîne sous forme analysée à l’application appelante (y compris le numéro de port, la longueur du préfixe et d’autres informations d’adresse), à l’aide de la structure NC_ADDRESS pointée par pv. Cette macro retourne E_INVALIDARG si l’application appelante ne parvient pas à allouer la structure pointée par pv.

Les représentations de l’adresse IP (Internet Protocol) versions 4 et 6 (v4/v6) pour les services et réseaux, ainsi que les adresses Internet nommées et les services utilisant le format DNS (Domain Name System) sont analysées. Si la chaîne d’adresse réseau représente un nom d’hôte nommé (DNS) ou un service, la valeur retournée dans le membre PrefixLength de NC_ADDRESS est égale à zéro.

Définissez le masque de type d’adresse réseau à l’aide de la macro NetAddr_SetAllowType avant d’appeler la macro NetAddr_GetAddress .

Spécifications

Besoin Valeur
Client minimum requis Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
plateforme cible Fenêtres
En-tête shellapi.h

Voir aussi

NetAddr_GetAllowType