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

正文內(nèi)容

基于vc的聊天工具設(shè)計(西南科技大學(xué))(編輯修改稿)

2024-07-20 04:09 本頁面
 

【文章內(nèi)容簡介】 X, strAboutMenu)。 } } SetIcon(m_hIcon, TRUE)。 // Set big icon SetIcon(m_hIcon, FALSE)。 // Set small icon m_iNetPort = 3127。 (this)。 m_bServer = FALSE。 GetDlgItem(IDC_BN_CLOSE)EnableWindow(FALSE)。 return TRUE。 // return TRUE unless you set the focus to a control}void CServerDlg::OnSysCommand(UINT nID, LPARAM lParam){ if ((nID amp。 0xFFF0) == IDM_ABOUTBOX) { CAboutDlg dlgAbout。 ()。 } else { CDialog::OnSysCommand(nID, lParam)。 }}void CServerDlg::OnPaint() { if (IsIconic()) { CPaintDC dc(this)。 // device context for painting SendMessage(WM_ICONERASEBKGND, (WPARAM) (), 0)。 int cxIcon = GetSystemMetrics(SM_CXICON)。 int cyIcon = GetSystemMetrics(SM_CYICON)。 CRect rect。 GetClientRect(amp。rect)。 int x = (() cxIcon + 1) / 2。 int y = (() cyIcon + 1) / 2。 (x, y, m_hIcon)。 } else { CDialog::OnPaint()。 }}HCURSOR CServerDlg::OnQueryDragIcon(){ return (HCURSOR) m_hIcon。}void CServerDlg::OnBnStart() { // 創(chuàng)建套接字 (m_iNetPort)。 // 開始監(jiān)聽 ()。 // 顯示 CString strInfo。 (IDS_CREATE_SERVER)。 ShowInDisplay(strInfo)。 m_bServer = TRUE。 GetDlgItem(IDC_BN_START)EnableWindow(FALSE)。 GetDlgItem(IDC_BN_CLOSE)EnableWindow(TRUE)。}void CServerDlg::OnBnClose() { CloseServer()。 GetDlgItem(IDC_BN_START)EnableWindow(TRUE)。 GetDlgItem(IDC_BN_CLOSE)EnableWindow(FALSE)。}void CServerDlg::OnAccept(){ // 創(chuàng)建新客戶 CMySocket *pNewClient = new CMySocket。 pNewClientInitialize(this)。 (*pNewClient)。 // 放入鏈表中 (pNewClient)。}void CServerDlg::OnClientClose(WPARAM wParam, LPARAM lParam){ CMySocket *p_delClient = (CMySocket*)wParam。 // 關(guān)閉該用戶 p_delClientShutDown()。 char buffer[BUFFERSIZE]。 while(p_delClientReceive(buffer, BUFFERSIZE)0)。 p_delClientClose()。 // 在用戶鏈表中刪除該用戶 POSITION psCur, psList = ()。 CMySocket *p_curClient。 while(psList!=NULL) { psCur = psList。 p_curClient = (CMySocket *)(psList)。 if(p_delClient==p_curClient) { (psCur)。 break。 } } // 發(fā)送信息告訴其他用戶該客戶退出 CString strMsg。 (IDS_CLIENT_CLOSE)。 NETMESSAGE netMessage(PTC_CLIENT_QUIT, p_delClientGetName(), _T(), p_delClientGetName() + strMsg)。 SendToAllClient(netMessage)。 // 界面上清理該用戶信息 ((1, p_delClientGetName()))。 ShowInDisplay(p_delClientGetName() + strMsg)。 // 刪除該用戶 delete p_delClient。}void CServerDlg::OnReceive(WPARAM wParam, LPARAM lParam){ CMySocket *p_curClient = (CMySocket*)wParam。 NETMESSAGE netMessage。 p_curClientReceive((char *)amp。netMessage, sizeof(netMessage))。 switch() { case PTC_NEW: // 新客戶加入 NewClientAdd(p_curClient, amp。netMessage)。 break。 case PTC_SAY: // 普通聊天 ShowMessage(netMessage)。 break。 } // 把加工過的信息發(fā)送給其他用戶 SendToAllClient(netMessage)。}void CServerDlg::CloseServer(){ if(!m_bServer) return。 // 向所有客戶發(fā)送服務(wù)端關(guān)閉的信息 CString strInfo。 (IDS_CLOSESERVER)。 NETMESSAGE netMessage(PTC_SYSTEM, _T(), _T(), strInfo)。 SendToAllClient(netMessage)。 // 服務(wù)端界面顯示關(guān)閉信息 ShowInDisplay(strInfo)。 // 關(guān)閉服務(wù)端 ()。 // 關(guān)閉客戶端 char buffer[BUFFERSIZE]。 CMySocket *m_pClient。 POSITION psList = ()。 while(psList!=NULL) { m_pClient = (CMySocket *)(psList)。 m_pClientShutDown()。 while(m_pClientReceive(buffer, BUFFERSIZE)0)。 m_pClientClose()。 delete m_pClient。 } ()。 m_bServer = FALSE。}// 向所有戶發(fā)出信息void CServerDlg::SendToAllClient(const NETMESSAGE amp。netMessage){ CMySocket *m_pClient。 POSITION psList = ()。 while(psList!=NULL) { m_pClient = (CMySocket *)(psList)。 m_pClientSendMsg(netMessage)。 }}void CServerDlg::ShowInDisplay(CString str){ m_strDisplay += str + \r\n。 UpdateData(false)。}
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1