Condividi tramite


macro NetAddr_GetAddress (shellapi.h)

Indica se un indirizzo di rete è conforme a un tipo e un formato specificati.

Sintassi

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

Parametri

hwnd

Handle per il controllo degli indirizzi di rete che contiene l'indirizzo da convalidare.

[in, out] pv

Puntatore a una struttura NC_ADDRESS per ricevere informazioni sull'indirizzo di rete in formato analizzato, se il formato dell'indirizzo e il tipo nel controllo specificato da hwnd vengono convalidati. L'applicazione chiamante è responsabile dell'allocazione della memoria per questa struttura.

Valore restituito

Tipo: HRESULT

Restituisce uno dei valori seguenti di tipo HRESULT:

  • E_INVALIDARG : l'applicazione chiamante non è riuscita ad allocare una struttura di NC_ADDRESS .
  • ERROR_INSUFFICIENT_BUFFER : il buffer out è troppo piccolo per contenere l'indirizzo di rete analizzato.
  • ERROR_INVALID_PARAMETER : la stringa dell'indirizzo di rete non è di alcun tipo specificato.
  • ERROR_SUCCESS : operazione riuscita.
  • S_FALSE : non esiste alcun indirizzo nel controllo degli indirizzi di rete da convalidare.

Osservazioni:

Utilizzare la macro NetAddr_GetAddress per convalidare un indirizzo di rete in un controllo degli indirizzi di rete rispetto a una maschera di tipo di indirizzo di rete preimpostato. Per creare un'istanza, usare la classe msctls_netaddress definita in Shellapi.h. Chiamare InitNetworkAddressControl in fase di esecuzione prima di chiamare questa macro. In questo modo viene inizializzata la libreria di controlli comuni che contiene il controllo degli indirizzi di rete.

Questa macro ottiene la stringa di indirizzo di rete da un controllo degli indirizzi di rete, analizza la stringa e controlla se la stringa corrisponde a una maschera di tipo indirizzo di rete. Se la stringa corrisponde alla maschera, la funzione restituisce S_OK e restituisce la stringa in formato analizzato all'applicazione chiamante (incluso il numero di porta, la lunghezza del prefisso e altre informazioni sull'indirizzo), usando la struttura NC_ADDRESS a cui punta pv. Questa macro restituisce E_INVALIDARG se l'applicazione chiamante non riesce ad allocare la struttura a cui punta il pv.

Vengono analizzate le rappresentazioni di indirizzi IP (Internet Protocol) versioni 4 e 6 (v4/v6) per servizi e reti, nonché indirizzi e servizi Internet denominati tramite il formato DNS (Domain Name System). Se la stringa di indirizzi di rete rappresenta un nome host denominato (DNS) o un servizio, il valore restituito nel membro PrefixLength di NC_ADDRESS è zero.

Impostare la maschera del tipo di indirizzo di rete usando la macro NetAddr_SetAllowType prima di chiamare la macro NetAddr_GetAddress .

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Finestre
Intestazione shellapi.h

Vedere anche

NetAddr_GetAllowType