Partager via


structure DNS_RECORDA (windns.h)

La structure DNS_RECORD stocke un enregistrement de ressource DNS (RR).

Syntaxe

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;

Membres

pNext

Pointeur vers la structure DNS_RECORD suivante.

pName

Pointeur vers une chaîne qui représente le nom de domaine du jeu d’enregistrements. Il doit s’agir du format de chaîne correspondant à la fonction appelée, telle que ANSI, Unicode ou UTF8.

wType

Valeur qui représente le type d’enregistrement DNS RR. wType détermine le format des données. Par exemple, si la valeur de wType est DNS_TYPE_A, le type de données Data est DNS_A_DATA.

wDataLength

Longueur, en octets, des données. Pour les types de données de longueur fixe, cette valeur correspond à la taille du type de données correspondant, tel que sizeof(DNS_A_DATA). Pour les types de données non fixes, utilisez l’une des macros suivantes pour déterminer la longueur des données :

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

Valeur qui contient une bitmap d’indicateurs d’enregistrement DNS.

Flags.S

Ensemble d’indicateurs sous la forme d’une structure DNS_RECORD_FLAGS .

dwTtl

Valeur de durée de vie (TTL) du DNS RR, en secondes.

dwReserved

Réservé. Ne pas utiliser.

Data

Le type de données DNS RR est déterminé par wType et est l’un des membres suivants :

SOA, Soa

Le type de données RR est DNS_SOA_DATA. La valeur de wType est DNS_TYPE_SOA.

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

Le type de données RR est DNS_PTR_DATA. La valeur de wType est DNS_TYPE_PTR.

MINFO, Minfo, RP, Rp

Le type de données RR est DNS_MINFO_DATA. La valeur de wType est DNS_TYPE_MINFO.

MX, Mx, AFSDB, Afsdb, RT, Rt

Le type de données RR est DNS_MX_DATA. La valeur de wType est DNS_TYPE_MX.

HINFO, Hinfo, ISDN, Isdn, TXT, Txt, X25

Le type de données RR est DNS_TXT_DATA. La valeur de wType est DNS_TYPE_TEXT.

WKS, Wks

Le type de données RR est DNS_WKS_DATA. La valeur de wType est DNS_TYPE_WKS.

CLÉ, Clé

Le type de données RR est DNS_KEY_DATA. La valeur de wType est DNS_TYPE_KEY.

SIG, Sig

Le type de données RR est DNS_SIG_DATA. La valeur de wType est DNS_TYPE_SIG.

ATMA, Atma

Le type de données RR est DNS_ATMA_DATA. La valeur de wType est DNS_TYPE_ATMA.

NXT, Nxt

Le type de données RR est DNS_NXT_DATA. La valeur de wType est DNS_TYPE_NXT.

SRV, Srv

Le type de données RR est DNS_SRV_DATA. La valeur de wType est DNS_TYPE_SRV.

NAPTR, Naptr

Le type de données RR est DNS_NAPTR_DATA. La valeur de wType est DNS_TYPE_NAPTR.

OPT, Opt

Windows 7 ou version ultérieure : le type de données RR est DNS_OPT_DATA. La valeur de wType est DNS_TYPE_OPT.

DS, Ds

Windows 7 ou version ultérieure : le type de données RR est DNS_DS_DATA. La valeur de wType est DNS_TYPE_DS.

RRSIG, Rrsig

Windows 7 ou version ultérieure : le type de données RR est DNS_RRSIG_DATA. La valeur de wType est DNS_TYPE_RRSIG.

NSEC, Nsec

Windows 7 ou version ultérieure : le type de données RR est DNS_NSEC_DATA. La valeur de wType est DNS_TYPE_NSEC.

DNSKEY, Dnskey

Windows 7 ou version ultérieure : le type de données RR est DNS_DNSKEY_DATA. La valeur de wType est DNS_TYPE_DNSKEY.

TKEY, Tkey

Le type de données RR est DNS_TKEY_DATA. La valeur de wType est DNS_TYPE_TKEY.

TSIG, Tsig

Le type de données RR est DNS_TSIG_DATA. La valeur de wType est DNS_TYPE_TSIG.

WINS, Wins

Le type de données RR est DNS_WINS_DATA. La valeur de wType est DNS_TYPE_WINS.

WINSR, WinsR, NBSTAT, Nbstat

Le type de données RR est DNS_WINSR_DATA. La valeur de wType est DNS_TYPE_WINSR.

Data.A

Le type de données RR est DNS_A_DATA. La valeur de wType est 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

Le type de données RR est DNS_NULL_DATA. La valeur de wType est DNS_TYPE_NULL.

Data.WKS

Data.Wks

Data.AAAA

Le type de données RR est DNS_AAAA_DATA. La valeur de wType est 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 ou version ultérieure : le type de données RR est DNS_DHCID_DATA. La valeur de wType est 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

Remarques

Lors de la génération d’une liste DNS_RECORD en tant qu’argument d’entrée pour les différentes routines de mise à jour DNS trouvées dans l’API DNS, tous les indicateurs de la structure DNS_RECORD doivent être définis sur zéro.

Notes

L’en-tête windns.h définit DNS_RECORD en tant qu’alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
En-tête windns.h

Voir aussi

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