Поделиться через


функция DnsExtractRecordsFromMessage_UTF8 (windns.h)

Тип функции DnsExtractRecordsFromMessage извлекает записи ресурсов (RR) из сообщения DNS и сохраняет эти записи в DNS_RECORD структуре. Как и многие другие функции DNS, тип функции DnsExtractRecordsFromMessage реализован в нескольких формах для упрощения кодирования различных символов. В зависимости от используемой кодировки символов используйте одну из следующих функций:

  • DnsExtractRecordsFromMessage_W (_W для кодировки Юникода)
  • DnsExtractRecordsFromMessage_UTF8 (_UTF8 для кодировки UTF-8)
Если тип функции DnsExtractRecordsFromMessage используется без ее суффикса (_W или _UTF8), возникнет ошибка компилятора.

Синтаксис

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

Параметры

[in] pDnsBuffer

Указатель на структуру DNS_MESSAGE_BUFFER , содержащую ответное сообщение DNS.

[in] wMessageLength

Размер сообщения в pDnsBuffer (в байтах).

[out] ppRecord

Указатель на структуру DNS_RECORD , содержащую список извлеченных запросов R. Чтобы освободить эти записи, используйте функцию DnsRecordListFree .

Возвращаемое значение

Возвращает подтверждение успешного выполнения после успешного завершения. В противном случае возвращает соответствующий код ошибки DNS, как определено в Winerror.h.

Комментарии

Функция 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
Header windns.h
Библиотека Dnsapi.lib
DLL Dnsapi.dll

См. также раздел

DNS_MESSAGE_BUFFER

DNS_RECORD

DnsQuery

DnsRecordListFree

DnsWriteQuestionToBuffer