다음을 통해 공유


DnsExtractRecordsFromMessage_W 함수(windns.h)

DnsExtractRecordsFromMessage 함수 형식은 DNS 메시지에서 RR(리소스 레코드)을 추출하고 해당 레코드를 DNS_RECORD 구조에 저장합니다. 많은 DNS 함수와 마찬가지로 DnsExtractRecordsFromMessage 함수 형식은 다양한 문자 인코딩을 용이하게 하기 위해 여러 형식으로 구현됩니다. 관련된 문자 인코딩에 따라 다음 함수 중 하나를 사용합니다.

  • 유니코드 인코딩의 DnsExtractRecordsFromMessage_W(_W)
  • DnsExtractRecordsFromMessage_UTF8(UTF-8 인코딩의 경우 _UTF8)
DnsExtractRecordsFromMessage 함수 형식이 접미사(_W 또는 _UTF8)없이 사용되는 경우 컴파일러 오류가 발생합니다.

통사론

DNS_STATUS DnsExtractRecordsFromMessage_W(
  [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
라이브러리 Dnsapi.lib
DLL Dnsapi.dll

참고 항목

DNS_MESSAGE_BUFFER

DNS_RECORD

dnsQuery

DnsRecordListFree

dnsWriteQuestionToBuffer