freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

racer程序課程設(shè)計(jì)-資料下載頁

2025-06-03 05:50本頁面
  

【正文】 ri_type) { //目的站點(diǎn)的返回 case ICMP_ECHOREPLY: ph=gethostbyaddr((const char *)amp。inaddr,AF_INET, sizeof(in_addr))。 if (ph != NULL) { CString report。 (%2d %s (%s),ttl,phh_name,i_ntoa(inaddr))。 ((CTraceRouteDlg*)m_pWnd)InfoAdd(report)。 } return TRUE。 break。 //中途路由器的返回 case ICMP_TIMEOUT: { CString report。 (%2d %s %2d ms,ttl, 長 春 大 學(xué) 課程 設(shè)計(jì)紙 共 16 頁 第 14 頁 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 裝 ┊ ┊ ┊ ┊ ┊ 訂 ┊ ┊ ┊ ┊ ┊ 線 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ i_ntoa(inaddr),(time2time1))。 ((CTraceRouteDlg*)m_pWnd)InfoAdd(report)。 return FALSE。 break。 } //錯(cuò)誤:主機(jī)不可達(dá) case ICMP_DESTUNREACH: { CString report。 (%2d %s 主機(jī)不可達(dá) ,ttl,i_ntoa(inaddr))。 ((CTraceRouteDlg*)m_pWnd)InfoAdd(report)。 return TRUE。 break。 } //收到一個(gè)不是回 應(yīng)的報(bào)文 default: { CString report。 (非回應(yīng)報(bào)文 )。 ((CTraceRouteDlg*)m_pWnd)InfoAdd(report)。 return TRUE。 } } return FALSE。 } void CTracer::SetWnd(CDialog *pWnd) { //設(shè)置窗口指針 m_pWnd=pWnd。 } void CTracer::Trace(char *destAddress) { int size=DEF_PACKET_SIZE+sizeof(ICMPHEADER)。 //轉(zhuǎn)換地址 if (!FillAddress(destAddress)) return 。 //分配必要的內(nèi)存空間 icmpData=(char*)HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,MAX_PACKET)。 icmpRcvBuf=(char*)HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,MAX_PACKET)。 if(!icmpData||!icmpRcvBuf) { 長 春 大 學(xué) 課程 設(shè)計(jì)紙 共 16 頁 第 15 頁 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 裝 ┊ ┊ ┊ ┊ ┊ 訂 ┊ ┊ ┊ ┊ ┊ 線 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ AfxMessageBox(分配內(nèi)存空間失敗 !)。 TerminateProcess(GetCurrentProcess(),1)。 } memset(icmpData,0,MAX_PACKET)。 memset(icmpRcvBuf,0,MAX_PACKET)。 //初始化套接字 m_hSocket=WSASocket(AF_INET,SOCK_RAW,IPPROTO_ICMP,NULL,0,WSA_FLAG_OVERLAPPED)。 if(m_hSocket==INVALID_SOCKET) { AfxMessageBox(套接字初始化失敗 !)。 TerminateProcess(GetCurrentProcess(),1)。 } //設(shè)置超時(shí)選項(xiàng) int nTimeOut=1000。 int result。 result=setsockopt(m_hSocket,SOL_SOCKET,SO_RCVTIMEO,(char*)amp。nTimeOut,sizeof(nTimeOut))。 if(result==SOCKET_ERROR) { AfxMessageBox(設(shè)置接收超時(shí)選項(xiàng)失敗 !)。 TerminateProcess(GetCurrentProcess(),1)。 } result=setsockopt(m_hSocket,SOL_SOCKET,SO_SNDTIMEO,(char*)amp。nTimeOut,sizeof(nTimeOut))。 if(result==SOCKET_ERROR) { AfxMessageBox(設(shè)置發(fā)送超時(shí)選項(xiàng)失敗 !)。 TerminateProcess(GetCurrentProcess(),1)。 } //設(shè)置路由不查詢路由表選項(xiàng) BOOL bDontRoute=TRUE。 result=setsockopt(m_hSocket,SOL_SOCKET,SO_DONTROUTE,(char*)amp。bDontRoute,sizeof(BOOL))。 if(result==SOCKET_ERROR) { AfxMessageBox(設(shè)置不查詢路由表選項(xiàng)失敗 !)。 TerminateProcess(GetCurrentProcess(),1)。 } for(int ttl=1。ttlMAX_NOTES。ttl++) 長 春 大 學(xué) 課程 設(shè)計(jì)紙 共 16 頁 第 16 頁 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ 裝 ┊ ┊ ┊ ┊ ┊ 訂 ┊ ┊ ┊ ┊ ┊ 線 ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ ┊ { //設(shè)定數(shù)據(jù)報(bào)的壽命 SetTTL(m_hSocket,ttl)。 //發(fā)送數(shù)據(jù)報(bào) if(SendData(icmpData,size)) continue。 //接收數(shù)據(jù)報(bào) if(RecvData(icmpRcvBuf,amp。result)) continue。 //處理接收到的數(shù)據(jù)報(bào) if (DecodeICMP(icmpRcvBuf,result,ttl)) break。 } HeapFree(GetProcessHeap(), 0, icmpData)。 HeapFree(GetProcessHeap(), 0, icmpRcvBuf)。 }
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1