1、 共 14 页 第 1 页 装 订 线 目目 录录 一、设计目的 . 2 二、功能介绍 . 2 三、程序流程 . 2 四、详细设计 . 4 五、设计总结 14 六、参考文献 14 共 14 页 第 2 页 装 订 线 一、设计目的一、设计目的 经过此次课程设计,令学生理解和学会应用 winsock 来进行编程;使学生提 高理论联系实际解决实际问题的能力;也使学生对基于 c+的网络通信编程进行 系统设计过程中的诸多具体问题有感性的认识和深入的理解;进而提高学生的学 习兴趣为其将来顺利进入毕业环节作铺垫。 二、功能介绍二、功能介绍 (1)配置文件支持功能:使用配置文件存储程序配置信息。 (2)网络
2、参数管理功能:能够管理网络参数,例如 IP、机器名、掩码和 DNS 等。 (3)路由表管理功能:能够查看和管理主机路由表条目。 三、程序流程三、程序流程 共 14 页 第 3 页 装 订 线 是 是 图 1.程序流程图 四、详细设计四、详细设计 (一)获取本地网络配置信息(一)获取本地网络配置信息 共 14 页 第 4 页 装 订 线 图 2.获取本地网络配置信息 本功能实现的是查询本地网络的基本配置信息,包括了主机名,注册域名,DNS 服务 器,获取信息后打印出来,如图 2,具体的代码如下: int main() FIXED_INFO fi; ULONG ulOutBufLen = size
3、of(fi)+100; / 获取本地电脑的网络参数 /* if(GetNetworkParams( getch(); return -1; */ GetNetworkParams( / 主机名称 printf(“ Host Name: %s n“, fi.HostName); / 电脑注册的域名 printf(“ Domain Name: %s n“, fi.DomainName); / 打印出所有的 DNS 服务器 printf(“ DNS Servers: n“); printf(“ t%s n“, fi.DnsServerList.IpAddress.String); IP_ADDR_S
4、TRING *pIPAddr = fi.DnsServerList.Next; while(pIPAddr != NULL) printf(“ t%s n“, pIPAddr-IpAddress.String); pIPAddr = pIPAddr-Next; getch(); return 0; (二)读取网卡信息(二)读取网卡信息 共 14 页 第 5 页 装 订 线 图 3.网卡信息 图 4.网卡信息 本功能实现的获取本地网卡信息,打印出本地连接,无线连接,WiFi 适配器等,具体的内容如图 所示,主要代码如下: typedef struct tagAdapterInfo string
5、strName; / 适配器名称 string strDriverDesc; / 适配器描述 string strIP; / IP 地址 string strNetMask; / 子网掩码 string strNetGate; / 网关 string strBroadcastIp; / 广播地址 string strS; / 测试用的 ADAPTER_INFO; BOOL GetAdapterInfo();/获取网络适配器信息 BOOL RegGetIP(ADAPTER_INFO *pAI, LPCTSTR lpszAdapterName, int nIndex = 0); vector AdapterInfoV ector; int main() 共 14 页 第 6 页