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;

}

}

相关推荐
佛系彭哥2 小时前
Win11下VSCode与MSYS2配置全攻略
c++·vscode·wxwidgets·msys2
Yupureki3 小时前
从零开始的C++学习生活 5:内存管理和模板初阶
c语言·c++·学习·visual studio
程序员Aries3 小时前
从零开始实现一个高并发内存池_DayThree:内存池整体框架与ThreadCache、TLS无锁访问
c++·学习·单例模式
charlie1145141913 小时前
Windows 10 系统编程——线程专题1
c++·windows·学习·线程
拾光Ծ4 小时前
【C++】STL有序关联容器的双生花:set/multiset 和 map/multimap 使用指南
数据结构·c++·算法
澄澈i5 小时前
设计模式学习[20]---桥接模式
c++·学习·设计模式·桥接模式
我星期八休息5 小时前
C++异常处理全面解析:从基础到应用
java·开发语言·c++·人工智能·python·架构
2401_841495645 小时前
【数据结构】汉诺塔问题
java·数据结构·c++·python·算法·递归·