MFC 获取域名TXT记录内容

#include <WinDns.h>

void GetTxtRecord(const std::string& domain) {

DNS_RECORD* pRecord = nullptr;

DWORD err = DnsQuery_UTF8(domain.c_str(), DNS_TYPE_TEXT, DNS_QUERY_STANDARD, nullptr, &pRecord, nullptr);

if (err == ERROR_SUCCESS) {

DNS_RECORD* current = pRecord;

while (current != nullptr) {

if (current->wType == DNS_TYPE_TEXT) {

DNS_TXT_DATAW* txtData = (DNS_TXT_DATAW*)&current->Data.Txt;

for (ULONG i = 0; i < txtData->dwStringCount; i++) {

CStringA str = (LPCSTR)txtData->pStringArray[i];

TRACE(_T("%s\n"), txtData->pStringArray[i]);

std::wcout << txtData->pStringArray[i] << std::endl;

}

}

current = current->pNext;

}

DnsRecordListFree(pRecord, DnsFreeRecordList);

}

else {

std::cerr << "Error querying DNS: " << err << std::endl;

}

}

相关推荐
誰能久伴不乏5 小时前
深入理解 `poll` 函数:详细解析与实际应用
linux·服务器·c语言·c++·unix
仰泳的熊猫6 小时前
1140 Look-and-say Sequence
数据结构·c++·算法·pat考试
Hard but lovely6 小时前
C/C++ ---条件编译#ifdef
c语言·开发语言·c++
闻缺陷则喜何志丹6 小时前
【计算几何】P12144 [蓝桥杯 2025 省 A] 地雷阵|普及+
c++·数学·蓝桥杯·计算几何
呱呱巨基6 小时前
C++ 红黑树
数据结构·c++·笔记·学习
ULTRA??7 小时前
Rust的移动语义
c++·算法·rust
Peter·Pan爱编程7 小时前
cmake 升级
c++·cmake·cuda
YouEmbedded7 小时前
函数模板与类模板——泛型编程
开发语言·c++·函数模板·类模板
小此方7 小时前
Re:从零开始学C++(一)基础精讲·上篇:命名空间、输入输出、缺省参数、函数重载
开发语言·c++
行云流水20007 小时前
编程竞赛语言选择:为什么优先学C++?聚焦竞赛属性的语法突破
开发语言·c++