次の方法で共有


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 マクロを使用して、バイト順序を変更します。

DnsExtractRecordsFromMessage_UTF8の次の宣言は Windns.h にあります。

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

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー windns.h
Library Dnsapi.lib
[DLL] Dnsapi.dll

こちらもご覧ください

DNS_MESSAGE_BUFFER

DNS_RECORD

DnsQuery

DnsRecordListFree

DnsWriteQuestionToBuffer