概括VB.NET实现PCC和桌面电脑的通信
创始人
2024-06-08 20:51:39
0

VB.NET有很多值得学习的地方,这里我们主要介绍VB.NET实现PPC和桌面电脑间的通信,包括介绍.NET框架等方面。本文介绍如何利用VB.NET 通过Windows Sockets (Winsock)以及多线程编程进行桌面电脑与Pocket PC(掌上电脑,简称:PPC)间的双向通信,并且通过当今流行的.NET平台编程语言Visaul Basic.NET 2003编写PC端和PPC端程序实现两者的信息交换。

一、概述

如今移动计算设备越来越普及,而PPC和桌面电脑的数据交换更是其必不可少的功能。笔者根据实际的无线PPC开发认为,PPC程序与桌面程序进行通信,除了可以通过SQL Server CE提供的RDA(远程数据存取)和Replication(复制)来完成与桌面SQL Server的数据存取外,另外一种比较方便快捷的方法则是通过Socket与桌面电脑完成信息的交换。

采用Visaul Basic.NET 2003进行PPC和桌面电脑的程序编写,VB.NET已经完全不同于过去的VB,它的诸多新特性以及依托.NET平台强大的面向对象体系使VB.NET焕然一新,不仅编写桌面程序更加轻松快捷而且更可快速的、可视化的开发以Pocket PC为平台的智能设备程序。

.NET框架是一种新的计算平台,可以简单理解为组件库或者类库,类似于MFC和VCL,但是却比它们更加强大和易用。.NET框架具有两个主要组件:公共语言运行库和 .NET框架类库。公共语言运行库是 .NET框架的基础,可以将运行库看作一个在执行时管理代码的代理,它提供核心服务(如内存管理、线程管理和远程处理等)。以运行库为目标的代码称为托管代码,而不以运行库为目标的代码称为非托管代码。.NET框架类库是一个与公共语言运行库紧密集成的可重用的类型集合,该类库是面向对象的,.NET框架类库能够完成一系列常见编程任务,包括诸如字符串管理、数据收集、数据库连接以及文件访问等任务。

.NET框架精简版是完整.NET框架的子集。它是对完整的 .NET框架进行精简后得到的版本,虽然其规模大大减小,但多数功能仍然保持完整。使用.NET框架精简版可以针对Pocket PC和其他Windows CE .NET设备进行开发和部署,提高开发人员的工作效率 VB.NET编译的桌面程序在目标机器上需要.NET框架的支持才能运行,而编译过的PPC程序需要在目标PPC上装载.NET框架精简版后方可运行。

二、设计思路

在.NET框架中System.NET.Sockets命名空间为需要严密控制网络访问的开发提供了 Windows Sockets (Winsock) 接口的托管实现,该命名空间中包含了与Socket相关的类、接口和枚举,主要包括实现 Berkeley 套接字接口的Socket类、用于 TCP 网络客户端侦听连接的TcpListener类、为 TCP 网络服务提供客户端连接的TcpClient类以及提供无连接的发送和接收用户数据文报 (UDP) 的网络服务等。该命名空间下的大部分类都受.NET框架精简版的支持,也就是说实现这些对象的代码完全可以在装载有.NET框架精简版的PPC上运行。

可以把PPC当作局域网中的一个终端来与桌面电脑连接,它们之间有多种物理连接方式,通常可以使用USB线缆配合ActiveSync直接与桌面电脑连接,当然,若PPC和桌面电脑同时具备其它的连接方式,比如无线WiFi(无线802.1x)、蓝牙等都可以组成相应的无线局域网络。

在PPC上编写客户端程序并实现TcpClient类,用于连接、发送和接收流数据。在桌面电脑上我们设计Socket服务端程序并实现 TcpListener类和Socket类,用于侦听和接受传入连接的请求。Socket类为网络通信提供了一套非常丰富的方法和属性,服务程序可以使用 TcpListener.Listen 方法侦听连接。Accept 方法处理任何传入的连接请求,并返回可用于与远程主机进行数据通信的Socket,如果当前使用的是无连接协议(如 UDP),则根本不需要侦听连接。实际上TcpClient类和TcpListener类为 Socket通信提供了比Socket类更简单、对用户更友好的接口,如果编写较简单的应用程序,而且只需同步数据传输,则可以考虑使用 TcpClient、TcpListener 和 UdpClient。

【编辑推荐】

  1. 概括VB.NET窗体编程模式
  2. 浅析VB For Each.Next语句
  3. 简要介绍VB System.Array类及其成员
  4. VB.NET重新申明数组简介
  5. 简单描述VB.NET申明数组

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...