io解决方案管理,给调试带来极大的方便。整个工程主要由C++核心类库、封装C++核心类库的DLL组件、类、窗体应用程序实现。考虑到工作量,本软件不需要考虑任何算法,而是在满足设计要求的前提下,以一种尽可能简单的方式软件管理扫描。Р2.2 各部分的设计与开发Р2.2.1 实现扫描的C#核心类库Р( 1.) 扫描路由信息函数Рtypedef struct ThreadParam_RouteР{Р?CString strHost;Р?CTreeCtrl *pTC;Р HTREEITEM hTI;Р}ROUTETHREADPARAM;РROUTETHREADPARAM rtp;РUINT GetTraceInfo(LPVOID pParam) Р{Р?ROUTETHREADPARAM *route=(ROUTETHREADPARAM *)pParam;Р?//CString strHost,CTreeCtrl *pTC,HTREEITEM hTIР?int MaxHop=0;Р?int ttl;Р?CPing ping;Р?struct in_addr iaDest; Р LPHOSTENT pHost,pHost1; Р?DWORD dwAddress; Р?IPINFO ipInfo; Р?ICMPECHO icmpEcho; Р?HANDLE hndlFile; Р?if(!ping.bValid)Р?{Р return 0;Р?}Р( 2.) 扫描端口线程РCCriticalSection cs;Рint NowWhere=0;Рtypedef struct ThreadParam2Р{Р?int nStartPort;Р?int nEndPort;Р?HWND hwnd;Р?CString strHost;Р?CTreeCtrl *pTC;Р?HTREEITEM hTI;