WEB开发网
开发学院软件开发VC 自定义ARP 阅读

自定义ARP

 2010-07-25 20:46:39 来源:WEB开发网   
核心提示:相信各位都玩过SOCKET编程,用CSocket进行网络通讯非常方便,自定义ARP,但有时想搞点底层点东西却非常麻烦,用windows的API最低也只能SOCK_RAW,主要用于对 PCAP 的那几个函数进行封装CYGEdit, 主要用重载几个操作符,方便使用CResize,顶多能看到IP层数据,如果想处理数据链路层的

相信各位都玩过SOCKET编程,用CSocket进行网络通讯非常方便,但有时想搞点底层点东西却非常麻烦,用windows的API最低也只能SOCK_RAW,顶多能看到IP层数据,如果想处理数据链路层的数据就无从下手了,幸好某天发现了winpcap东西。用了它处理底层的东西就非常方便。

winpcap主要有两个dll供程序员直接调用,pcap.dll和packet.dll,本程序主要使用pcap.dll,至于packet.dll的使用在21期TOo2y 的《 详谈调用winpcap驱动写arp多功能工具 》作了详细的介绍

一、本程序主要用了下面几个函数

1.int pcap_findalldevs ( pcap_if_t ** alldevsp, char * errbuf )

用于得到所有网络适配器信息放在 alldevsp

2.pcap_t* pcap_open_live ( const char * device, int snaplen, int promisc, int to_ms, char * ebuf )

用于打开网络适配器,并设置其捕获参数

3.int pcap_sendpacket (pcap_t *p, u_char *buf, int size)

发数据包

4.void pcap_freealldevs (pcap_if_t *alldevsp)

释放所以网络适配器

5.void pcap_close (pcap_t *p)

关闭网络适配器

二、类说明

CHex,主要用于处理十六进制数据

CYGPcap,主要用于对 PCAP 的那几个函数进行封装

CYGEdit, 主要用重载几个操作符,方便使用

CResize,主要用于窗口变化时,子窗口的变化

1 2  下一页

Tags:定义 ARP

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接