NetPage.h
上传用户:shouhua
上传日期:2014-12-06
资源大小:5685k
文件大小:4k
源码类别:

杀毒

开发平台:

Visual C++

  1. #if !defined(AFX_NETPAGE_H__C77F0230_6639_481A_BA99_F5F02A463877__INCLUDED_)
  2. #define AFX_NETPAGE_H__C77F0230_6639_481A_BA99_F5F02A463877__INCLUDED_
  3. #if _MSC_VER > 1000
  4. #pragma once
  5. #endif // _MSC_VER > 1000
  6. // NetPage.h : header file
  7. //
  8. #include "Winsock2.h"
  9. #pragma comment(lib, "Ws2_32.lib")
  10. typedef struct _PROTN2T //协议的名称结构
  11. int  proto ;
  12. char *pprototext ;
  13. }PROTN2T ; 
  14. #define PROTO_NUM  11 //协议数
  15. /* The IP header */
  16. typedef struct _IPHEADER { //ip协议头结构
  17.         unsigned char  header_len:4;
  18.         unsigned char  version:4;   
  19.         unsigned char  tos;            // type of service
  20.         unsigned short total_len;      // length of the packet
  21.         unsigned short ident;          // unique identifier
  22.         unsigned short flags;          
  23.         unsigned char  ttl;            
  24.         unsigned char  proto;          // protocol ( IP , TCP, UDP etc)
  25.         unsigned short checksum;       
  26.         unsigned int   sourceIP;
  27.         unsigned int   destIP;
  28. }IPHEADER;
  29. #define IP_VER 4 /* IP version */
  30. #define IP_HEAD_LEN 5 /* IP head length */
  31. #define IP_SERV_TYPE 0 /* IP service type */
  32. #define IP_PROTO_TCP 6 /* TCP protocol */
  33. #define IP_PROTO_UDP 17 /* UDP protocol */
  34. #define IP_PROTO_ICMP 1 /* ICMP protocol */
  35. #define IP_PAD 0 /* IP pseudohead padding */
  36. #define IP_MF 0x4000 /* IP MF */
  37. #define IP_DF 0x2000 /* IP DF */
  38. #define IP_FLAG_MASK 0x1fff /* IP flagoffset mask */
  39. #define IP_HEAD_BYTE_LEN 20 /* IP head length in byte */
  40. #define TCP_HEAD_LEN 5 /* TCP head length */
  41. #define TCP_URG 0x20 /* TCP URG */
  42. #define TCP_ACK 0x10 /* TCP ACK */
  43. #define TCP_PSH 0x08 /* TCP PSH */
  44. #define TCP_RST 0x04 /* TCP RST */
  45. #define TCP_SYN 0x02 /* TCP SYN */
  46. #define TCP_FIN 0x01 /* TCP FIN */
  47. #define TCP_HEAD_BYTE_LEN 20 /* TCP head length in byte */
  48. #define UDP_HEAD_LEN 8 /* UDP head length */
  49. #define PSEUDO_HEAD_LEN 12 /* Pseudo head length */
  50. #define ICMP_HEAD_LEN 4 /* ICMP head length */
  51. struct TCPPacketHead { //tcp协议头结构
  52. WORD SourPort;
  53. WORD DestPort;
  54. DWORD SeqNo;
  55. DWORD AckNo;
  56. BYTE HLen;
  57. BYTE Flag;
  58. WORD WndSize;
  59. WORD ChkSum;
  60. WORD UrgPtr;
  61. };
  62. struct ICMPPacketHead { //icmp协议头结构
  63. BYTE Type;
  64. BYTE Code;
  65. WORD ChkSum;
  66. };
  67. struct UDPPacketHead { //udp协议头结构
  68. WORD SourPort;
  69. WORD DestPort;
  70. WORD Len;
  71. WORD ChkSum;
  72. };
  73. /////////////////////////////////////////////////////////////////////////////
  74. // CNetPage dialog
  75. class CNetPage : public CPropertyPage
  76. {
  77. DECLARE_DYNCREATE(CNetPage)
  78. // Construction
  79. public:
  80. BOOL OnInitDialog();
  81. void close_thread();
  82. void AddData(CString s0, CString s1, CString s2, CString s3, CString s4, CString s5 ,CString s6);
  83. CNetPage();
  84. ~CNetPage();
  85. // Dialog Data
  86. //{{AFX_DATA(CNetPage)
  87. enum { IDD = IDD_DIALOG_NET };
  88. CListCtrl m_ctrList;
  89. CIPAddressCtrl m_ip2;
  90. CIPAddressCtrl m_ip1;
  91. CButton m_start;
  92. BOOL m_check1;
  93. BOOL m_check2;
  94. BOOL m_check3;
  95. //}}AFX_DATA
  96. // Overrides
  97. // ClassWizard generate virtual function overrides
  98. //{{AFX_VIRTUAL(CNetPage)
  99. protected:
  100. virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
  101. //}}AFX_VIRTUAL
  102. // Implementation
  103. protected:
  104. HICON m_hIcon;
  105.     
  106. // AF added members and methods
  107. DWORD  m_ipsource     ; // IP in net format
  108. DWORD  m_iphostsource ; // same IP in host format
  109. DWORD  m_iphost;
  110. DWORD  m_ipcheckedhost;
  111. SOCKET m_s            ;
  112. DWORD  m_threadID     ;
  113. BOOL   m_Multihomed   ;
  114. BOOL   m_Local        ;
  115. CDWordArray m_IPArr   ;
  116. // Generated message map functions
  117. //{{AFX_MSG(CNetPage)
  118. afx_msg void OnButton1();
  119. //}}AFX_MSG
  120. DECLARE_MESSAGE_MAP()
  121.     friend UINT threadFunc ( LPVOID p ) ;
  122. };
  123. //{{AFX_INSERT_LOCATION}}
  124. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  125. #endif // !defined(AFX_NETPAGE_H__C77F0230_6639_481A_BA99_F5F02A463877__INCLUDED_)