DnsValidateName_UTF8関数 (windns.h)
DnsValidateName 関数は、指定した DNS 名の状態を検証します。 多くの DNS 関数と同様に、DnsValidateName 関数型は、異なる文字エンコードを容易にするために複数の形式で実装されます。 関連する文字エンコードに基づいて、次のいずれかの関数を使用します。
- DnsValidateName_A (ANSI エンコードの_A)
- DnsValidateName_W (Unicode エンコードの_W)
- DnsValidateName_UTF8 (UTF-8 エンコードの_UTF8)
構文
DNS_STATUS DnsValidateName_UTF8(
[in] PCSTR pszName,
[in] DNS_NAME_FORMAT Format
);
パラメーター
[in] pszName
調べる DNS 名を表す文字列へのポインター。
[in] Format
調べる名前の形式を指定する DNS_NAME_FORMAT 値。
戻り値
DnsValidateName 関数には、次の可能な戻り値があります。
備考
コンピューター ホスト (単一ラベル) の状態を確認するには、DnsValidateName 関数の種類 DnsNameHostnameLabel を 形式で使用します。
DnsValidateName 関数は、特定の DNS 名でエラーが存在するかどうかを判断し、最初のエラーを見つけると戻るときに進行して動作します。 したがって、複数の異なるエラーを含む DNS 名は、最初のエラーが発生したと報告される可能性があり、2 番目のエラーを見つけるためにのみ、修正して再送信できます。
DnsValidateName 関数は、次のようにエラーを検索します。
- DNS 名が次の場合に ERROR_INVALID_NAME を返します。
- 255 オクテットより長い。
- 63 オクテットより長いラベルが含まれています。
- 2 つ以上の連続するドットを含みます。
- ドット (.) で始まります。
- 名前が DnsNameDomainLabel または DnsNameHostnameLabel に設定
形式で送信された場合は、ドット (.) が含まれます。
- 次に、DnsValidateName は、完全な DNS 名が数字 (0 から 9) のみで構成されている場合、または DNS 名の最初のラベルが数字 (0 から 9) のみで構成されている場合、Format が DnsNameDomainLabel または DnsNameDomain に設定されていない場合に DNS_ERROR_NUMERIC_NAME を返します。
- 次に、DNSValidateName
DNS 名の場合はDNS_ERROR_NON_RFC_NAMEが返されます。 - 拡張文字または Unicode 文字を少なくとも 1 つ含みます。Windows 8 以降 注意: 国際ドメイン名 (IDN) エンコードが有効になっている場合、DnsValidateName_W はエラーを返しません。
- アンダースコア (_) がラベルの先頭文字でない限り、名前に dnsNameSrvRecord に設定された 形式 で送信されます。
- 次に、DnsValidateName
DNS 名の場合は DNS_ERROR_INVALID_NAME_CHAR が返されます。- スペースを含みます。
- 次のいずれかの無効な文字が含まれています: { | } ~ [ \ ] ^ ' : ;< = > ? & @ ! " # $ % ^ ' ( ) + / ,
- 複数ラベル付き名前の最初のラベルである場合を除き、アスタリスク (*) が含まれます。ただし、DnsNameWildcardに
Format が設定。
注意DnsValidateName が DNS_ERROR_NON_RFC_NAMEを返す場合、すべての DNS サーバーが名前を受け入れるわけではないことを示す警告としてエラーを処理する必要があります。 このエラーが発生した場合、DNS サーバーは、適切に構成されている場合は送信された名前を受け入れます (既定の構成では、DNS_ERROR_NON_RFC_NAME が返されたときに送信された名前を受け入れます)、他の DNS サーバー ソフトウェアでは受け入れられない場合があることに注意してください。 Windows DNS サーバーは NON_RFC_NAMESを処理します。
- DNS_ERROR_NUMERIC_NAME
- DNS_ERROR_INVALID_NAME_CHAR
- ERROR_INVALID_NAME
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows 2000 Server [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | windns.h |
ライブラリ | Dnsapi.lib |
DLL | Dnsapi.dll |