次の方法で共有


DNS_RECORDA構造体 (windns.h)

DNS_RECORD 構造体には、DNS リソース レコード (RR) が格納されます。

構文

typedef struct _DnsRecordA {
  struct _DnsRecordA *pNext;
  PSTR               pName;
  WORD               wType;
  WORD               wDataLength;
  union {
    DWORD            DW;
    DNS_RECORD_FLAGS S;
  } Flags;
  DWORD              dwTtl;
  DWORD              dwReserved;
  union {
    DNS_A_DATA          A;
    DNS_SOA_DATAA       SOA;
    DNS_SOA_DATAA       Soa;
    DNS_PTR_DATAA       PTR;
    DNS_PTR_DATAA       Ptr;
    DNS_PTR_DATAA       NS;
    DNS_PTR_DATAA       Ns;
    DNS_PTR_DATAA       CNAME;
    DNS_PTR_DATAA       Cname;
    DNS_PTR_DATAA       DNAME;
    DNS_PTR_DATAA       Dname;
    DNS_PTR_DATAA       MB;
    DNS_PTR_DATAA       Mb;
    DNS_PTR_DATAA       MD;
    DNS_PTR_DATAA       Md;
    DNS_PTR_DATAA       MF;
    DNS_PTR_DATAA       Mf;
    DNS_PTR_DATAA       MG;
    DNS_PTR_DATAA       Mg;
    DNS_PTR_DATAA       MR;
    DNS_PTR_DATAA       Mr;
    DNS_MINFO_DATAA     MINFO;
    DNS_MINFO_DATAA     Minfo;
    DNS_MINFO_DATAA     RP;
    DNS_MINFO_DATAA     Rp;
    DNS_MX_DATAA        MX;
    DNS_MX_DATAA        Mx;
    DNS_MX_DATAA        AFSDB;
    DNS_MX_DATAA        Afsdb;
    DNS_MX_DATAA        RT;
    DNS_MX_DATAA        Rt;
    DNS_TXT_DATAA       HINFO;
    DNS_TXT_DATAA       Hinfo;
    DNS_TXT_DATAA       ISDN;
    DNS_TXT_DATAA       Isdn;
    DNS_TXT_DATAA       TXT;
    DNS_TXT_DATAA       Txt;
    DNS_TXT_DATAA       X25;
    DNS_NULL_DATA       Null;
    DNS_WKS_DATA        WKS;
    DNS_WKS_DATA        Wks;
    DNS_AAAA_DATA       AAAA;
    DNS_KEY_DATA        KEY;
    DNS_KEY_DATA        Key;
    DNS_SIG_DATAA       SIG;
    DNS_SIG_DATAA       Sig;
    DNS_ATMA_DATA       ATMA;
    DNS_ATMA_DATA       Atma;
    DNS_NXT_DATAA       NXT;
    DNS_NXT_DATAA       Nxt;
    DNS_SRV_DATAA       SRV;
    DNS_SRV_DATAA       Srv;
    DNS_NAPTR_DATAA     NAPTR;
    DNS_NAPTR_DATAA     Naptr;
    DNS_OPT_DATA        OPT;
    DNS_OPT_DATA        Opt;
    DNS_DS_DATA         DS;
    DNS_DS_DATA         Ds;
    DNS_RRSIG_DATAA     RRSIG;
    DNS_RRSIG_DATAA     Rrsig;
    DNS_NSEC_DATAA      NSEC;
    DNS_NSEC_DATAA      Nsec;
    DNS_DNSKEY_DATA     DNSKEY;
    DNS_DNSKEY_DATA     Dnskey;
    DNS_TKEY_DATAA      TKEY;
    DNS_TKEY_DATAA      Tkey;
    DNS_TSIG_DATAA      TSIG;
    DNS_TSIG_DATAA      Tsig;
    DNS_WINS_DATA       WINS;
    DNS_WINS_DATA       Wins;
    DNS_WINSR_DATAA     WINSR;
    DNS_WINSR_DATAA     WinsR;
    DNS_WINSR_DATAA     NBSTAT;
    DNS_WINSR_DATAA     Nbstat;
    DNS_DHCID_DATA      DHCID;
    DNS_NSEC3_DATA      NSEC3;
    DNS_NSEC3_DATA      Nsec3;
    DNS_NSEC3PARAM_DATA NSEC3PARAM;
    DNS_NSEC3PARAM_DATA Nsec3Param;
    DNS_TLSA_DATA       TLSA;
    DNS_TLSA_DATA       Tlsa;
    DNS_SVCB_DATA       SVCB;
    DNS_SVCB_DATA       Svcb;
    DNS_UNKNOWN_DATA    UNKNOWN;
    DNS_UNKNOWN_DATA    Unknown;
    PBYTE               pDataPtr;
  } Data;
} DNS_RECORDA, *PDNS_RECORDA;

メンバーズ

pNext

次の DNS_RECORD 構造体へのポインター。

pName

レコード セットのドメイン名を表す文字列へのポインター。 これは、ANSI、Unicode、UTF8 など、呼び出された関数に対応する文字列形式である必要があります。

wType

RR DNS レコードの種類を表す値。 wType は、データの形式 決定します。 たとえば、wType の値が DNS_TYPE_Aされている場合、Data のデータ型は DNS_A_DATA

wDataLength

データの長さ (バイト単位)。 固定長データ型の場合、この値は対応するデータ型のサイズです (sizeof(DNS_A_DATA)など)。 固定でないデータ型の場合は、次のいずれかのマクロを使用して、データの長さを判断します。

C++
#include <windows.h>

#define DNS_NULL_RECORD_LENGTH(ByteCount) (sizeof(DWORD) + (ByteCount)) #define DNS_WKS_RECORD_LENGTH(ByteCount) (sizeof(DNS_WKS_DATA) + (ByteCount-1)) #define DNS_WINS_RECORD_LENGTH(IpCount) (sizeof(DNS_WINS_DATA) + ((IpCount-1) * sizeof(IP_ADDRESS))) #define DNS_TEXT_RECORD_LENGTH(StringCount) (sizeof(DWORD) + ((StringCount) * sizeof(PCHAR)))

Flags

Flags.DW

DNS レコード フラグのビットマップを含む値。

Flags.S

DNS_RECORD_FLAGS 構造体の形式のフラグのセット。

dwTtl

DNS RR の Time To Live 値 (TTL) (秒単位)。

dwReserved

引っ込み思案。 使用しないでください。

Data

DNS RR データ型は、wType によって決定され、次のいずれかのメンバーです。

SOA、Soa

RR データ・タイプは DNS_SOA_DATAwType の値は DNS_TYPE_SOAです。

PTR、Ptr、NS、Ns、CNAME、Cname、DNAME、Dname、MB、Mb、MD、Md、MF、Mf、MG、Mg、MR、Mr

RR データ・タイプは DNS_PTR_DATAwType の値は DNS_TYPE_PTRです。

MINFO、Minfo、RP、Rp

RR データ・タイプは DNS_MINFO_DATAwType の値は DNS_TYPE_MINFOです。

MX、Mx、AFSDB、Afsdb、RT、Rt

RR データ・タイプは DNS_MX_DATAwType の値は DNS_TYPE_MXです。

HINFO、Hinfo、ISDN、Isdn、TXT、Txt、X25

RR データ型は DNS_TXT_DATA。 wType の値 DNS_TYPE_TEXT

WKS、Wks

RR データ・タイプは DNS_WKS_DATA。 wType の値 DNS_TYPE_WKS

KEY、Key

RR データ・タイプは DNS_KEY_DATAwType の値は DNS_TYPE_KEYです。

SIG、Sig

RR データ・タイプは DNS_SIG_DATA。 wType の値 DNS_TYPE_SIG

ATMA、Atma

RR データ・タイプは DNS_ATMA_DATAwType の値は DNS_TYPE_ATMAです。

NXT、Nxt

RR データ・タイプが DNS_NXT_DATAwType の値は DNS_TYPE_NXTです。

SRV、Srv

RR データ・タイプは DNS_SRV_DATAwType の値は DNS_TYPE_SRVです。

NAPTR、Naptr

RR データ・タイプは DNS_NAPTR_DATA。 wType の値 DNS_TYPE_NAPTR

OPT、Opt

Windows 7 以降: RR データ型が DNS_OPT_DATAwType の値は DNS_TYPE_OPTです。

DS、Ds

Windows 7 以降: RR データ型が DNS_DS_DATA。 wType の値 DNS_TYPE_DS

RRSIG、Rrsig

Windows 7 以降: RR データ型が DNS_RRSIG_DATAwType の値は DNS_TYPE_RRSIGです。

NSEC、Nsec

Windows 7 以降: RR データ型が DNS_NSEC_DATAwType の値は DNS_TYPE_NSECです。

DNSKEY、Dnskey

Windows 7 以降: RR データ型が DNS_DNSKEY_DATAwType の値は DNS_TYPE_DNSKEYです。

TKEY、Tkey

RR データ・タイプは DNS_TKEY_DATAwType の値は DNS_TYPE_TKEYです。

TSIG、Tsig

RR データ・タイプは DNS_TSIG_DATA。 wType の値 DNS_TYPE_TSIG

WINS、Wins

RR データ・タイプは DNS_WINS_DATA。 wType の値 DNS_TYPE_WINS

WINSR、WinsR、NBSTAT、Nbstat

RR データ・タイプは DNS_WINSR_DATA。 wType の値 DNS_TYPE_WINSR

Data.A

RR データ・タイプは DNS_A_DATAwType の値は DNS_TYPE_Aです。

Data.SOA

Data.Soa

Data.PTR

Data.Ptr

Data.NS

Data.Ns

Data.CNAME

Data.Cname

Data.DNAME

Data.Dname

Data.MB

Data.Mb

Data.MD

Data.Md

Data.MF

Data.Mf

Data.MG

Data.Mg

Data.MR

Data.Mr

Data.MINFO

Data.Minfo

Data.RP

Data.Rp

Data.MX

Data.Mx

Data.AFSDB

Data.Afsdb

Data.RT

Data.Rt

Data.HINFO

Data.Hinfo

Data.ISDN

Data.Isdn

Data.TXT

Data.Txt

Data.X25

Data.Null

RR データ型は DNS_NULL_DATA。 wType の値 DNS_TYPE_NULLです。

Data.WKS

Data.Wks

Data.AAAA

RR データ型は DNS_AAAA_DATAwType の値は DNS_TYPE_AAAAです。

Data.KEY

Data.Key

Data.SIG

Data.Sig

Data.ATMA

Data.Atma

Data.NXT

Data.Nxt

Data.SRV

Data.Srv

Data.NAPTR

Data.Naptr

Data.OPT

Data.Opt

Data.DS

Data.Ds

Data.RRSIG

Data.Rrsig

Data.NSEC

Data.Nsec

Data.DNSKEY

Data.Dnskey

Data.TKEY

Data.Tkey

Data.TSIG

Data.Tsig

Data.WINS

Data.Wins

Data.WINSR

Data.WinsR

Data.NBSTAT

Data.Nbstat

Data.DHCID

Windows 7 以降: RR データ型が DNS_DHCID_DATAwType の値は DNS_TYPE_DHCIDです。

Data.NSEC3

Data.Nsec3

Data.NSEC3PARAM

Data.Nsec3Param

Data.TLSA

Data.Tlsa

Data.SVCB

Data.Svcb

Data.UNKNOWN

Data.Unknown

Data.pDataPtr

備考

DNS_RECORD リストを DNS API で見つかったさまざまな DNS 更新ルーチンの入力引数としてビルドする場合は、DNS_RECORD 構造体内のすべてのフラグを 0 に設定する必要があります。

手記

windns.h ヘッダーは、DNS_RECORDをエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルまたは実行時エラーが発生する不一致につながる可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ヘッダー windns.h

関連項目

DNS_AAAA_DATA

DNS_ATMA_DATA

DNS_A_DATA

DNS_DHCID_DATA

DNS_DNSKEY_DATA

DNS_DS_DATA

DNS_KEY_DATA

DNS_LOC_DATA

DNS_MINFO_DATA

DNS_MX_DATA

DNS_NAPTR_DATA

DNS_NSEC_DATA

DNS_NULL_DATA

DNS_NXT_DATA

DNS_OPT_DATA

DNS_PTR_DATA

DNS_RRSIG_DATA

DNS_SIG_DATA

DNS_SOA_DATA

DNS_SRV_DATA

DNS_TKEY_DATA

DNS_TSIG_DATA

DNS_TXT_DATA

DNS_WINSR_DATA

DNS_WINS_DATA

DNS_WKS_DATA

DnsExtractRecordsFromMessage

DnsModifyRecordsInSet

DnsQuery

DnsRecordCompare

DnsRecordCopyEx

DnsRecordSetCompare

DnsRecordSetDetach

DnsReplaceRecordSet