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;

}

}

相关推荐
橘子师兄7 分钟前
c++中list详解
开发语言·c++
Mr_WangAndy4 小时前
C++_chapter2_C++基础知识点
c++·const·new和delete·c++函数·左右引用和右值引用
ha20428941947 小时前
Linux操作系统学习之---基于环形队列的生产者消费者模型(毛坯版)
linux·c++·学习
渡我白衣9 小时前
C++ 同名全局变量:当符号在链接器中“相遇”
开发语言·c++·人工智能·深度学习·microsoft·语言模型·人机交互
是那盏灯塔10 小时前
【算法】——动态规划之01背包问题
数据结构·c++·算法·动态规划
迷失的walker11 小时前
【Qt C++ QSerialPort】QSerialPort fQSerialPortInfo::availablePorts() 执行报错问题解决方案
数据库·c++·qt
南方的狮子先生13 小时前
【数据结构】(C++数据结构)查找算法与排序算法详解
数据结构·c++·学习·算法·排序算法·1024程序员节
紫荆鱼13 小时前
设计模式-适配器模式(Adapter)
c++·设计模式·适配器模式
报错小能手14 小时前
C++笔记(面向对象)详解单例模式
c++·笔记·单例模式
吗~喽15 小时前
【C++】内存管理
c++