funzione DnsValidateName_A (windns.h)
La funzione DnsValidateName convalida lo stato di un nome DNS specificato. Analogamente a molte funzioni DNS, il DnsValidateName tipo di funzione viene implementato in più forme per facilitare la codifica dei caratteri diversa. In base alla codifica dei caratteri interessata, usare una delle funzioni seguenti:
- DnsValidateName_A (_A per la codifica ANSI)
- DnsValidateName_W (_W per la codifica Unicode)
- DnsValidateName_UTF8 (_UTF8 per la codifica UTF-8)
Sintassi
DNS_STATUS DnsValidateName_A(
[in] PCSTR pszName,
[in] DNS_NAME_FORMAT Format
);
Parametri
[in] pszName
Puntatore a una stringa che rappresenta il nome DNS da esaminare.
[in] Format
Valore DNS_NAME_FORMAT che specifica il formato del nome da esaminare.
Valore restituito
La funzione DnsValidateName
Osservazioni
Per verificare lo stato dell'host computer (etichetta singola), usare il tipo di funzione dnsValidateName
La funzione DnsValidateName funziona in modo progressivo quando si determina se esiste un errore con un nome DNS specificato e viene restituito dopo aver trovato il primo errore. Pertanto, un nome DNS con più errori diversi può essere segnalato come con il primo errore e potrebbe essere corretto e inviato di nuovo, solo per trovare il secondo errore.
La funzione DnsValidateName cerca gli errori nel modo seguente:
- Restituisce ERROR_INVALID_NAME se il nome DNS:
- È più lungo di 255 ottetti.
- Contiene un'etichetta più lunga di 63 ottetti.
- Contiene due o più punti consecutivi.
- Inizia con un punto (.).
- Contiene un punto (.) se il nome viene inviato con Formato impostato su DnsNameDomainLabel o DnsNameHostnameLabel.
- Successivamente, DnsValidateName restituisce DNS_ERROR_NUMERIC_NAME se il nome DNS completo è costituito solo da caratteri numerici (0-9) o la prima etichetta del nome DNS è costituita solo da caratteri numerici (0-9), a meno che Format sia impostato su DnsNameDomainLabel o DnsNameDomain.
- Quindi, DnsValidateName restituisce DNS_ERROR_NON_RFC_NAME se il nome DNS:
- Contiene almeno un carattere esteso o Unicode.Nota Windows 8 o versione successiva: DnsValidateName_W non restituisce un errore se è abilitata la codifica IDN (International Domain Name).
- Contiene il carattere di sottolineatura (_), a meno che il carattere di sottolineatura non sia un primo carattere in un'etichetta, nel nome, inviato con Formato impostato su DnsNameSrvRecord.
- Successivamente, DnsValidateName restituisce DNS_ERROR_INVALID_NAME_CHAR se il nome DNS:
- Contiene uno spazio.
- Contiene uno dei caratteri non validi seguenti: { | } ~ [ \ ] ^ ' : ; < = > ? & @ ! " # $ % ^ ' ( ) + / ,
- Contiene un asterisco (*), a meno che l'asterisco non sia la prima etichetta nel nome con etichetta multipla, inviata con Formato impostato su DnsNameWildcard.
Se DnsValidateName restituisce uno degli errori seguenti, pszName deve essere gestito come nome host non valido:
- DNS_ERROR_NUMERIC_NAME
- DNS_ERROR_INVALID_NAME_CHAR
- ERROR_INVALID_NAME
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 2000 Professional [solo app desktop] |
server minimo supportato | Windows 2000 Server [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
windns.h |
libreria |
Dnsapi.lib |
dll | Dnsapi.dll |