关于远程控制,SOCKET通讯的程序,数据传输的问题??请教!!!

草履虫程序员 2007-12-13 12:50:29
我的程序是这样:有个服务器程序,专门用来启动服务,建立网络,通过服务器端可以得到远程客户机的软件的界面,界面里有很多数据,都是放在Edit控件里的参数,需要通过服务器端控制之后,从客户端传送到服务器端,问题是:如果是多个Edit控件,比如有8个,每个edit控件里的数据是0.4,0.6,0.2,0.9,0.12,0.34,0.4,0.23这样的数据。当服务器端点击接受数据按钮之后,直接通过网络socket字得到客户端界面里的数据,请问是对于服务器端来说,是不是Recv的过程,对于客户端是Send的过程。当服务器端修改了数据之后,是不是用Send发送出去,客户端是Recv的过程?请问这个过程具体通讯过程是怎么样的?初始化套接字,基本配置建立我会做了。中间这个发送和接受过程感觉比较混乱。
请哪位大哥帮忙?
...全文
144 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
像风一样自由 2012-04-28
  • 打赏
  • 举报
回复
Socket 编程是阻塞式的,如果需要多个客户端那服务器一方最好要用多线程
NextMoon 2007-12-15
  • 打赏
  • 举报
回复
我有对应的实例,留下邮箱,我发给你.
zaodt 2007-12-14
  • 打赏
  • 举报
回复

一看就知道楼主第一次编写网络程序!

我第一次写网络程序时,跟你一样,找不着北!

对于初学者,我建议不要用 Windows API Socket ,而是应该用 CSocket 。

CSocket 是阻塞的,它对于初学者用起来比较直观,容易理解。

下面我们来看看楼主的问题:

对于一个问题,我们要简单化它,不要把它复杂化。

楼主现在是不太会写网络程序,所以先把你的什么远程控制抛开,只写一个简单的客户端、服务器程序。

// 服务器端程序流程
1、建立 Socket,指定端口;
2、开始监听;(在这里阻塞了,一直要等到客户的请求到来)
3、客户请求来了,用一个新的 Socket 接受请求;
4、接收或者传输数据;
5、关闭2个 Socket

上面的流程只能完成一次操作,如果要服务器端要长期监听,那就要用一个循环,如下:
1、建立 Socket,指定端口;
2、while(1) 来个循环;
{
3、 在循环中开始监听;
4、 客户请求来了,用一个新的 Socket 接受请求;
5、 接收或者传输数据;
6、 关闭接收数据的 Socket;
}

上面是个死循环,所以服务器时刻都等待接收客户端的请求。

客户端,我就不写了。

大概意思就这样,楼主应该先做小练习,先弄明白到底网络编程是怎么回事;

然后你的实际问题有眉目了。
草履虫程序员 2007-12-14
  • 打赏
  • 举报
回复
对于C和S是不是都有个发送和接受的过程啊?再请教这些数据怎么样定义格式发送?
草履虫程序员 2007-12-14
  • 打赏
  • 举报
回复
数据发送肯定要用个结构来表示。
rageliu 2007-12-14
  • 打赏
  • 举报
回复
比较简单的socket编程,找本网络编程看看就有眉目了。

这里要说的是数据建议以结构的方式来处理
baiduan 2007-12-14
  • 打赏
  • 举报
回复
哎,LS精辟言论啊.我刚开始学网络的时候,就没人指点.
//===对于一个问题,我们要简单化它,不要把它复杂化。
ding
snowbirdfly 2007-12-13
  • 打赏
  • 举报
回复
双方都是发送和接受的过程:
当服务器端点击接受数据按钮之后,要通知客户端发什么数据过来,所以有一个Send过程,同样客户端接下来收到这个要求之后发送数据过来~~~
当服务器端修改了数据之后,要把修改的信息发给客户端~~~

18,357

社区成员

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

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