• 休闲生活
  • 教育教学
  • 经济贸易
  • 政法军事
  • 人文社科
  • 农林牧渔
  • 信息科技
  • 建筑房产
  • 环境安全
  • 当前位置: 达达文档网 > 达达文库 > 休闲生活 > 正文

    关于Winsock在机房自动化系统中的应用

    时间:2020-09-18 08:01:09 来源:达达文档网 本文已影响 达达文档网手机站

    摘要:本文根据电台的机房自动化系统中远程控制通信的实现,详细描述了如何应用Winsock控件实现系统中数据的传输通信,以及Winsock控件的属性与事件等相关内容,并给出了详细的代码。

    关键词:自动化 Winsock

    中图分类号:TP29文献标识码:A文章编号:1007-9416(2011)09-0065-02

    1、引言

    随着计算机科学技术和网络技术的飞速发展,电台的自动化技术不断更新,如何能实现远程控制机房的设备是目前电台自动化的重要部分。而基于Winsock控件的计算机通信是比较成熟可靠地解决办法,Visual Basic提供的Winsock网络编程接口,可以方便实现网络编程。本文主要通过Visual Basic中的Winsock控件实现基本的服务器端和客户端的数据通信。

    2、Winsock的通讯协议

    在机房自动化系统中,其数据的远程通讯部分是在Visual Basic的Winsock控件基础上编写而成的。Winsock控件是微软公司提供的,可以供Microsoft Access、Visual Basic、Visual C++等开发人员使用。利用Winsock 控件可以与远程计算机建立连接,Winsock 包含有用户数据报文协议(UDP)和传输控制协议(TCP),可用这两种协议来建立客户端与服务器应用程序,实现数据交换。

    UDP协议和TCP协议的重要区别在于它们的连接状态。UDP协议是一种无连接的协议,数据从一台计算机发送到另一台计算机不需要建立连接,客户端和服务器可以使用相同程序。而TCP协议是一种有连接的协议,允许创建和维护与远程计算机的连接,使其彼此可以进行数据传输,利用TCP协议通信必须分别建立客户应用程序和服务器应用程序。此系统中的数据传输部分采用的是面向连接的TCP协议,其服务器和客户端之间的连接如图所示。

    3、Winsock控件的属性、方法和事件(表1-3)

    4、基于Winsock 的数据传输程序

    由于本系统采用的是TCP协议,所以必须分别建立服务区和客户应用程序。在创建服务器应用程序时,首先设置一个监听端口(LocalPort属性),调用Listen 方法进行监听。当客户端发出连接请求时(Connect),在服务器端就会触发ConnectRequest事件。为了完成连接,服务器端在ConnectRequest事件中调用Accept方法与客户端进行连接。建立连接后,任何一方计算机就可以发送、接收对方的数据。

    在创建客户端应用程序时,首先确定服务器的IP地址(RemoteHost属性)和进行监听的端口(RemotePort属性),然后调用Connect方法对服务器发出连接请求。当服务器与其建立了连接后,调用SentData方法向客户端发送数据。当客户端的应答数据到达时,发生DataArrive事件,调用Getdata方法获得对方传送的数据。客户端完成实验后,调用Close方法断开与服务器的连接。

    5、程序的具体实现

    (1)将服务器程序中的Winsock 控件命名为TcpServer,其LocalPort=38311,IP=192.168.0.1,服务器端设置为可以允许多个客户端访问的模式;将客户端程序中的Winsock控件命名为TcpClient。在服务器程序中加入代码:

    Private Sub Form_Load()

    TcpServer(0).LocalPort = 38311

    TcpServer(0).Listen

    End Sub

    (2)服务器进入监听状态,等待客户端发出连接请求。当客户端需要连接时,在客户程序中加入:

    Private Sub Form_Load()

    TcpClient.RemoteHost = "192.168.0.1"

    TcpClient.RemotePort = 38311

    TcpClient.Connect

    End Sub

    6、结语

    本文根据电台的自动化系统程序,探讨了远程控制过程中用到的Winsock 控件的相关属性,方法和事件,以及应用Winsock控件具体实现服务器端和客户端之间数据交换的方法,并有相应的事件的代码,在实际的工程应用中非常可靠、实用。

    参考文献

    [1]黄凌云编著.VB6.0办公自动化编程[M],北京,国防工业出版社,2000.

    [2]高延武,申勇编著.Visual Basic 6.0 程序设计教程,航空工业出版社,2001.

    [3]高春艳,安剑编著.Visual Basic 程序开发范例宝典,人民邮电出版社,2009.

    [4]仵浩,齐燕杰,宋文超编著.Visual Basic 串口通信程序开发实例导航,人民邮电出版社,2003.

    相关热词搜索: 机房 自动化 系统中的应用 Winsock

    • 生活居家
    • 情感人生
    • 社会财经
    • 文化
    • 职场
    • 教育
    • 电脑上网