1. ==================主函数==================  
  2. int main(int argc, char* argv[])  
  3. {  
  4. WSAData wsaData;  
  5. if (WSAStartup(MAKEWORD(1, 1), &wsaData) != 0) {  
  6. return 255;  
  7. }  
  8.  
  9. int retval = doit(argc, argv);  
  10.  
  11. WSACleanup();  
  12. return retval;  
  13. }  
  1. ==================头文件==================  
  2. icmpdefs.h  
  3. //ICMP.DLL 函数中需要的结构   
  4.  
  5.  
  6. typedef struct {  
  7. unsigned char Ttl; // Time To Live  
  8. unsigned char Tos; // Type Of Service  
  9. unsigned char Flags; // IP header flags  
  10. unsigned char OptionsSize; // Size in bytes of options data  
  11. unsigned char *OptionsData; // Pointer to options data  
  12. } IP_OPTION_INFORMATION, * PIP_OPTION_INFORMATION;  
  13.  
  14. typedef struct {   
  15. DWORD Address; // Replying address  
  16. unsigned long Status; // Reply status  
  17. unsigned long RoundTripTime; // RTT in milliseconds  
  18. unsigned short DataSize; // Echo data size  
  19. unsigned short Reserved; // Reserved for system use  
  20. void *Data; // Pointer to the echo data  
  21. IP_OPTION_INFORMATION Options; // Reply options  
  22. } IP_ECHO_REPLY, * PIP_ECHO_REPLY;  


相关内容