共用方式為


DnsExtractRecordsFromMessage_UTF8函式 (windns.h)

DnsExtractRecordsFromMessage 函式類型會從 DNS 訊息擷取資源記錄 (RR),並將這些記錄儲存在 DNS_RECORD 結構中。 和許多 DNS 函式一樣,DnsExtractRecordsFromMessage 函式類型會以多個形式實作,以利不同的字元編碼。 根據所涉及的字元編碼方式,使用下列其中一個函式:

  • DnsExtractRecordsFromMessage_W (Unicode 編碼的_W)
  • DnsExtractRecordsFromMessage_UTF8 (UTF-8 編碼的_UTF8)
如果 DnsExtractRecordsFromMessage 函式類型未使用其後綴(_W或_UTF8),則會發生編譯程序錯誤。

語法

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

參數

[in] pDnsBuffer

包含 DNS 回應訊息之 DNS_MESSAGE_BUFFER 結構的指標。

[in] wMessageLength

pDnsBuffer 中訊息的大小,以位元組為單位,

[out] ppRecord

包含所擷取 RR 清單之 DNS_RECORD 結構的指標。 若要釋放這些記錄,請使用 DnsRecordListFree 函式。

傳回值

在成功完成時傳回成功確認。 否則,傳回 Winerror.h 中所定義的適當 DNS 特定錯誤碼。

言論

DnsExtractRecordsFromMessage 函式的設計目的是以主機位元組順序操作訊息。 因此,接收的訊息應該從網路位元組順序轉換成擷取之前裝載位元組順序,或重新傳輸至網路之前。 使用 DNS_BYTE_FLIP_HEADER_COUNTS 巨集來變更位元組順序。

您可以在Windns.h中找到下列適用於 DnsExtractRecordsFromMessage_UTF8 的宣告。

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

要求

要求 價值
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
支援的最低伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平臺 窗戶
標頭 windns.h
連結庫 Dnsapi.lib
DLL Dnsapi.dll

另請參閱

DNS_MESSAGE_BUFFER

DNS_RECORD

DnsQuery

DnsRecordListFree

DnsWriteQuestionToBuffer