命名管道实现 服务器 和 客户端登陆界面 的通讯,无法做到循环自动判断,求解决……

酷爱冰红茶 2012-11-29 03:01:55
在服务器端创建一个命名管道,然后再客户端的登陆界面打开命名管道,进行通讯
在输入账户密码点击登陆的时候,通过命名管道发送数据到服务器端,然后服务器端接收信息判断账户密码,在把判断的结果发送回客户端!这两个判断过程如果放在循环里面就会在客户端的readfile()处卡主,因为服务器端循环中一直占用readfile()函数,这个问题怎么解决呀,连个进程怎么同步呀!
...全文
74 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
酷爱冰红茶 2012-11-29
  • 打赏
  • 举报
回复
想让这两个过程自动循环而且不冲突,这面点登陆,,服务器端就判断,,,然后客户端接收结果就输出出来! 现在放在两个循环中,客户端就卡在 int i=ReadFile(hPipe, buf, 100, &dwRead, NULL); ReadFile()处! 初学求帮助!
酷爱冰红茶 2012-11-29
  • 打赏
  • 举报
回复
服务器端判断过程 char buf[100]; DWORD dwRead; if (ReadFile(hPipe, buf, 100, &dwRead, NULL)) { CString str; str=buf; if (str=="zrd123") { AfxMessageBox("客户端登陆成功!"); char buf1[]="登陆成功!"; WriteFile(hPipe, buf1, strlen(buf1)+1, &dwRead, NULL); // return 0; } else { char buf1[]="登陆失败!"; WriteFile(hPipe, buf1, strlen(buf1)+1, &dwRead, NULL); } }
酷爱冰红茶 2012-11-29
  • 打赏
  • 举报
回复
客户端判断过程 char buf[100]; DWORD dwRead; memset(buf,0,100); Sleep(1); int i=ReadFile(hPipe, buf, 100, &dwRead, NULL); if(i) { if(buf=="登陆成功!") { OnCancel(); } } else { AfxMessageBox(buf); // CloseHandle(hPipe); }

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧