如何实现SocketConnetion的连接配置

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 itperson 的 blog

        前几天因学校机房上课需要,学校要我做一个“机房学生作业系统”,要求用c/s结构,于是我决定用socket协议来实现客户端与服务器的连接通信。

        要实现socket之间的通信,服务器端必须有socket服务器,borland delphi和c++builder自身带着,名字是:scktsrvr.exe,在bin目录下。同时服务器段还必须包含remotedatamodel模块,同时上面放置datasetprovider等组件。客户端需要放置datasource、clientdataset和socketconnetion组件。

       下面我们看一下如何配置。首先,设置socket服务器的服务端口号,一般来说,设置为默认值211就行了,当然你可以设置为其他值,但是,最好你看一下你机器的端口配置情况。关于端口配置文件,你可以在window2000下的winnt/system32/drivers/etc/下找到名为“hosts”的文件,它没有扩展名,你可以右键点击,在“选择打开方式”中选择“记事本”,这样你可以看到你机器所有端口的配置情况,当然你可以将它们进行更改。

       其次,关于客户端的配置就显得比较复杂一点。socketconnetion提供两种连接远程服务器的方式:计算机名和ip地址。关于服务器名—host,你可以用host="computername"的方式指定,也可以通过右边的省略号按钮进行搜索。关于ip地址方式,只要将ip地址,如127.0.0.1赋给address就性行了。但是这两个只能任选一个。

       不过,其中很重要的一点是:如果你用的是计算机的名称的话,最好你的服务器上装有dns系统,或者在客户端的"hosts"文件(windows98在windows目录下)中在下面写入下面一行:

      211.147.x.xx                      computername

      前面是服务器的ip地址,后面是服务器的名称。这样的话,客户端的socketconnetion方能找到服务器,否则会出错。

     下面我给出两种常见的错误提示:

       说明你的socket服务器没有启动,或者你的端口号不以致造成的。解决方法:1.看一下服务器是否启动;2.看看端口号是否一致。

        说明你的客户端找不到服务器,如果你采用ip地址的方式连接,请确认你的ip地址是否是主机地址;如果你采用的是host机器名的方式,请确认你的机器名是否正确,同时确认你的服务器是否应用了dns解析服务,同时,如果你的主机没有dns解析服务,那么清确认一下你的hosts文件是否怎加了解析的那一行。

本文关键:SocketConnetion,c/s,midas
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top