Freigeben über


DnsExtractRecordsFromMessage_UTF8 Funktion (windns.h)

Der DnsExtractRecordsFromMessage Funktionstyp extrahiert Ressourceneinträge (RR) aus einer DNS-Nachricht und speichert diese Einträge in einer DNS_RECORD Struktur. Wie viele DNS-Funktionen wird der DnsExtractRecordsFromMessage Funktionstyp in mehreren Formen implementiert, um die unterschiedliche Zeichencodierung zu vereinfachen. Verwenden Sie basierend auf der verwendeten Zeichencodierung eine der folgenden Funktionen:

  • DnsExtractRecordsFromMessage_W (_W für unicode-Codierung)
  • DnsExtractRecordsFromMessage_UTF8 (_UTF8 für UTF-8-Codierung)
Wenn der DnsExtractRecordsFromMessage Funktionstyp ohne suffix (entweder _W oder _UTF8) verwendet wird, tritt ein Compilerfehler auf.

Syntax

DNS_STATUS DnsExtractRecordsFromMessage_UTF8(
  [in]  PDNS_MESSAGE_BUFFER pDnsBuffer,
  [in]  WORD                wMessageLength,
  [out] PDNS_RECORD         *ppRecord
);

Parameter

[in] pDnsBuffer

Ein Zeiger auf eine DNS_MESSAGE_BUFFER Struktur, die die DNS-Antwortnachricht enthält.

[in] wMessageLength

Die Größe der Nachricht in Bytes in pDnsBuffer.

[out] ppRecord

Ein Zeiger auf eine DNS_RECORD Struktur, die die Liste der extrahierten RRs enthält. Verwenden Sie zum Freigeben dieser Einträge die funktion DnsRecordListFree.

Rückgabewert

Gibt eine Erfolgsbestätigung nach erfolgreichem Abschluss zurück. Andernfalls wird der entsprechende DNS-spezifische Fehlercode wie in Winerror.h definiert zurückgegeben.

Bemerkungen

Die funktion DnsExtractRecordsFromMessage ist für die Ausführung von Nachrichten in der Hostbytereihenfolge konzipiert. Daher sollten empfangene Nachrichten von der Netzwerkbytereihenfolge in die Hostbytereihenfolge vor der Extraktion oder vor der Erneutübertragung in das Netzwerk konvertiert werden. Verwenden Sie das DNS_BYTE_FLIP_HEADER_COUNTS Makro, um die Bytefolge zu ändern.

Die folgende Deklaration für DnsExtractRecordsFromMessage_UTF8 finden Sie in Windns.h.

DNS_STATUS
WINAPI
DnsExtractRecordsFromMessage_UTF8(
    __in            PDNS_MESSAGE_BUFFER pDnsBuffer,
    __in            WORD                wMessageLength,
    __deref_out     PDNS_RECORD *       ppRecord
    );

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- windns.h
Library Dnsapi.lib
DLL- Dnsapi.dll

Siehe auch

DNS_MESSAGE_BUFFER

DNS_RECORD

DnsQuery-

DnsRecordListFree-

DnsWriteQuestionToBuffer