VB中使用WinSock控件编写网络程序

来源:网络时间:2011-04-25

  WinSock控件能够通过UDP协议(用户数据报协议)或TCP协议(数据传输协议)连接到远程的机器并进行数据交换。这两种协议都能用来创建客户端和服务端应用程序。就像定时器控件一样,WinSock控件运行时没有一个可视的界面。

  可能的用途

  创建客户端应用程序,它能在信息到达中央服务器之前把用户的信息收集起来。

  创建服务端应用程序,它能作为来自多个用户的数据一个集中处理点。

  创建“聊天”程序。

  协议的选择

  当我们使用WinSock控件时,首先要确定的是使用TCP还是UDP协议。它们之间主要的区别在于连接状态:

  TCP协议控件是一个基于连接的协议,就像电话机一样,用户必须在通话之前建立连接;

  UDP是一个无连接的协议,两台计算机之间的事务处理就像传纸条一样:一台计算机向另一台计算机发送消息,但是它们之间并没有一个明确的连接路径。另外,发送的单个信息量的大小取决于网络。

  通常,你要创建的应用程序的类别就决定了你要选择的协议。以下是几个能够帮助你选择合适的协议的问题:

  当发送或接收数据时,该应用程序需要从服务端或客户端获得认证吗?如果要的话,那么TCP协议就正好需要在发送或接受数据前建立明确的连接。

  要发送的数据量大吗?(就像图片、声音文件之类)一旦建立了连接,TCP协议就会保持连接并保证数据的完整性。但是,这种连接会占用的更多的处理器资源,成本也会更高一些。

  数据是陆续传输的,还是一次全部传完呢?比如,如果你要创建的应用程序在某些任务完成时会告知具体的计算机,那么选择UDP协议会更合适一些。UDP协议也更适合于发送小量数据。

  协议的配置

  配置你的应用程序所用到的协议:在设计阶段,单击工具窗口里的协议,选择sckTCPProtocol或sckUDPProtocol。你也可以在代码里配置协议,就像下面这样:

Winsock1.Protocol=sckTCPProtocol

  确定你的计算机名

  要连接到远程的计算机,你必须知道它的IP地址或别名。IP地址是一串用句点分隔的3位数字。通常,计算机的别名更容易让人记住。

  按下面的步骤可以找到你的计算机名:

  在“任务栏”里单击“开始”

  在“设置”选项里单击“控制面板”;

  双击“网络”图标;

  单击“网络标识”

  在“计算机名”中显示的就是你的计算机名。

  一旦你找到你的计算名,它就可以作为远程主机的属性来用了。

发表评论

最新评论(共2条)

2345市网友

没代码,这些早就会了。

2012-06-20 1

回复@2345网友:

  • 取消

2345市网友

##不知道从哪里抄来的,还没抄全##

2012-05-01 1

回复@2345网友:

  • 取消