用VC编写C/S消息传送程序
2008-11-14 19:37:11 来源:WEB开发网6.添加一个拨号对话框,名为dial,有一个文本框用来写IP地址.并在clientview.cpp中添加代码:
#include dial.h
7.在拨号项添加一个判断函数:
void CClientView::OnUpdateDial
(CCmdUI* pCmdUI)
{
// TODO: Add your command update
UI handler code here
pCmdUI->Enable(TRUE);
if(Isconnect)
pCmdUI->Enable(FALSE);
}
8.添加接收与发送消息的线程:
long WINAPI Listen(CClientView *pView)
{
char msg[2000];
pView- >m_data[5]="Sending ATTACH command";
pView- >InvalidateRect(NULL);
wsprintf(msg,"A: ");
sendto(pView- >m_sock,msg,1024,0,(PSOCKADDR)&pView- >m_saSrvr,sizeof(pView- >m_saSrvr));
int saSrvrLen ,nchar;
while(1)
{
saSrvrLen=sizeof(pView->m_saSrvr);
nchar=recvfrom(pView- >m_sock,msg,1024,0,(PSOCKADDR)&pView- >m_saSrvr,&saSrvrLen);
if(nchar<0) { pView->m_data[pView- >count++]="Error in recvform";
pView- >InvalidateRect(NULL);
}
else
{
pView->m_data[pView- >count++]=msg;
pView->Isconnect=TRUE;
pView->flag=TRUE;
pView->InvalidateRect(NULL);
}
}
return(0);
}
9.同主程序一样做一个发送消息项,代码如上.
10.显示程序也与主程序一样,代码如上。
11.在Project中点击Settings中选择Link项添加wsock32.lib。
12.编译程序便可得到client.exe程序。
server.exe 和 client.exe 做完后,就可以在具有TCP/IP协议下的网络中执行。通过上面的例子,你可以很快了解vc++网络编程的优点,你还可以添加其它功能项,在这我就不多加叙述了。希望我的程序能起到抛砖引玉的目的,让我们都能编出好的网络程序。
更多精彩
赞助商链接