基於CSOCKET的Client簡單實例(轉)
阿新 • • 發佈:2017-12-07
ffffff 顯示數據 sdn for sock hit ssa tex 接收
原文轉自 http://blog.csdn.net/badagougou/article/details/78410382
第一步:創建一個基類為CSOCKET類的新類,Cclient,並在主對話框類創建對象Cclient client1
第二步:創建並連接服務器,註意IP地址和端口號要匹配服務器
在主對話框OnInitDialog()裏調用。
// TODO: 在此添加額外的初始化代碼 client1.Create(); client1.Connect(_T("192.168.42.87"),20000); return TRUE; // 除非將焦點設置到控件,否則返回 TRUE
第三步:發送信息
創建一個文本框,點擊按鈕時發送文本框數據給服務器
void CtemptcpclientDlg::OnBnClickedButton1() { // TODO: 在此添加控件通知處理程序代碼 UpdateData(true); char buf[20]="0"; for(int i=0;i<m_sendtxt.GetLength();i++)//m_sendtxt是文本框關聯變量 { buf[i]=m_sendtxt.GetAt(i); } client1.Send(buf,m_sendtxt.GetLength()); }
第四步:接受信息
在類視圖裏點擊Cclient類,重寫OnReceive消息函數,並把接收到的消息在文本框顯示
void Cclient::OnReceive(int nErrorCode) { // TODO: 在此添加專用代碼和/或調用基類 char buf[128]={0}; int recelen=Receive(buf,1024); CString str(buf); //AfxMessageBox(str);//顯示方法1 ((CtemptcpclientDlg*)theApp.GetMainWnd())->SetDlgItemTextW(IDC_EDIT2, str);//IDC_EDIT2顯示數據的文本框ID CSocket::OnReceive(nErrorCode); }
最後就可以和服務器簡單通信了。
基於CSOCKET的Client簡單實例(轉)