Home > Technology > WINDOWS 下获取本机 DNS

WINDOWS 下获取本机 DNS

Sat, 13 Dec 2008 17:06:49 +0800
以下是我用于提取本机DNS的代码,使用WIN32 API GetNetworkParams函数。
另,获取DNS的方法也有读取REGEDIT的方法。

int get_dns_servers(char* hostlist, int hsize)
{
FIXED_INFO *fi;
unsigned long s;
DWORD ret;

memset(hostlist, 0, sizeof(char)*hsize);

s = sizeof(fi);
fi= (FIXED_INFO*)malloc(sizeof(char)*s);
memset(fi, 0, sizeof(char)*s);

ret = GetNetworkParams(fi, &s);
if( ret == ERROR_BUFFER_OVERFLOW )
{
free(fi);
fi= (FIXED_INFO*)malloc(sizeof(char)*s);
}

ret = GetNetworkParams(fi, &s);
sprintf(hostlist, "%s,%s", fi->DnsServerList.IpAddress.String, (fi->DnsServerList.Next)->IpAddress.String);

free(fi);

return 0;
}
Tag:WINDOWS, 网络
Hots
评论
发表评论:


  [TIPS:首次发表评论的朋友,需要验证]
Tags
Recent Post
Recent Comments
Links
Copyright Notes
You can reship all of these articles without permission but MUST mark the original link in your post. Please contact with me() if u have advice or other arrangements.
Copyright©2007-2011 lewphee.com All rights reserved.