主要的界面如下:
主要代碼如下:
typedef CString strIP; UINT uPort; BOOL bNoOrder; CPortScan_TCPDlg *ptr; HTREEITEM TreeItem; }THREADPARAM;
THREADPARAM *threadparam = (THREADPARAM* CString strIP = threadparam-> UINT uPort = threadparam-> CPortScan_TCPDlg *ptr = threadparam-> HTREEITEM TreeItem = threadparam-> BOOL bNoOrder = threadparam-> g_iTotalThreadCount++ Sleep(rand() % SOCKET sock = - sock = socket(AF_INET, SOCK_STREAM, (sock == iTimeOut = (SOCKET_ERROR == setsockopt(sock, SOL_SOCKET, SO_SNDTIMEO, (TCHAR*)&iTimeOut, g_iTotalThreadCount-- iTimeOut = (SOCKET_ERROR == setsockopt(sock, SOL_SOCKET, SO_RCVTIMEO, (TCHAR*)&iTimeOut, g_iTotalThreadCount-- addr_remote.sin_family = addr_remote.sin_addr.S_un.S_addr = addr_remote.sin_port = ( != connect(sock, (PSOCKADDR)&addr_remote, g_iTotalThreadCount-- (uPort < servent * se = getservbyport(htons(uPort), _T( (se != strTemp.Format(_T(), uPort, se-> strTemp.Format(_T( strTemp.Format(_T(), uPort, ptr-> ptr->m_wndTreeResult.InsertItem(strTemp, , shutdown(sock, g_iTotalThreadCount-- }
:strRet = _T(); :strRet = _T(); :strRet = _T(); :strRet = _T(); :strRet = _T(); :strRet = _T(); :strRet = _T(); :strRet = _T(); :strRet = _T(); :strRet = _T(); :strRet = _T(); :strRet = _T(); :strRet = _T(); :strRet = _T(); }
下載地址見後續博文。