您的位置:首页 → 网页设计 → ASP文摘 → 用VB构建Internet的应用
用VB构建Internet的应用
时间:2004/11/7 3:08:00 来源:本站整理 作者:蓝点 我要评论 (0)
Internet技术的发展为编程人员提供了更广泛的施展身手的空间。早先"Internet应用程序"这个词仅仅只是指一些用FTP协议下载文件或浏览HTML页面的工具,而如今使用Visual Basic,不仅可以为Internet开发应用程序,而且还可以把Internet技术作为一部分融入大型的解决方案中。 今天我们所要讨论的问题是利用Visual Basic创建在面向Internet的应用中起重要作用的ActiveX组件 。例如,你所创建的ActiveX控件 可以用于HTML页面;你开发的ActiveX文档可以在Internet浏览器 中使用并于其他的组件 一起和HTML页面集成起来;另外ActiveX代码组件 (以前被称为OLE服务器 ), 可以被部署在客户端或服务器 端的计算机上用于后台的处理。 Internet的开发环境 Internet是一个使用TCP/IP协议、全球性的非集中管理的计算机网络。如果去掉全球性这一点, 所谓"Internet技术"完全可以和本地局域网中所使用的技术一样。 从一方面来看, Internet技术只是简单地为开发人员提供了另一个施展身手的空间。如果你在和Web连接时使用了ActiveX组件 ,尽管你具体实现的方法有可能不同,如采用了HTML和VBScript代码以实现安全性或是其他,但是你仍然在调用方法,设置属性,处理事件等等。这样,作为一个VB开发人员所有的知识和技能都被用于了Internet的环境下。 从另外一个方面来看,应用Internet的技术可以使你向一些吸引人的方向延伸你的开发工作。例如将ActiveX组件 和Internet技术综合有以下的益处: 更简单的维护---作为Web一部分的组件 可以根据需要下载,无须用户运行一个setup程序进行升级; 将功能延伸至Internet---通过通用协议,用户将看不见在Internet和Intranet之间的切换。 Internet客户/服务器 可以借用客户机/服务器 的关系来考查Internet的开发环境,客户端和服务器 端都可以有"静态的"和"活动的"两种状态。活动的客户机或服务器 可以根据其内部状态的改变而动态地运行一个脚本或是改变其行为;而静态的客户机或服务器 仅仅只是对外界激励作出反应。 Internet开发包括以下四种情形: 1. 静态的客户机和静态的服务器 2. 静态的客户机和活动的服务器 3. 活动的客户机和静态的服务器 4. 活动的客户机和活动的服务器 静态的客户机和静态的服务器 静态的客户向静态的服务器 发送请求,服务器 响应该请求并返回一个文件。一旦HTML页面被下载到客户端, 客户机和服务器 的连接就终止,直到服务器 接受到下一个请求。在使用FTP下载文件或是Usernet阅读新闻时也会发生同样的情形。 结合静态客户机的功能即为用Visual Basic中和Internet技术相关的ActiveX控件 创建一个FTP工具,一个Web浏览器 或是一个新闻读者等等。这些性能也可以被集成到一个大的应用程序中。 静态的客户机和活动的服务器 假如你正在使用一个静态的客户端, 例如和一个当前应用程序相连接的Web浏览器 窗体, 以下载一个HTML页面,上面有文本框以输入查询内容,还有按钮以把用户输入的条目作为一个字符串发送给服务器 。当你发送完文本之后,服务器 返回一个已定制过的HTML页面-往往是通过调用一个DLL中的函数, 上面有你查询的结果。这就是一个"活动的"服务器 的例子, 它自动处理数据并根据条件返回一个定制的结果。 创建活动服务器 的途径之一就是通过使用Visual Basic开发的DLL并用Oleisapi2.dll实现访问。Oleisapi2.dll包含在Windows NT Server 4.0之中,是Internet Information Server (IIS)的一种功能,它包括了ISAPI的函数功能集。通过IIS和Oleisapi2.dll, 你可以在Web服务器 上部署DLL, 并从客户端使用HTML页面上的信息或调用其方法。 活动的客户机和静态的服务器 当客户机拥有处理能力时称之为活动的客户机。活动的客户机拥有本地处理任务的能力,而不是请求服务器 帮助处理。在客户机/服务器 应用中,本地处理的能力不仅提高了任务完成的速度,而且减轻了服务器 的负担。 活动客户机的情形有很多种。例如,用Visual Basic构建的ActiveX文档几乎可以包括所有传统应用的功能。当你把它放到一个容器中时, 例如Internet Explorer, 你的客户端就完全拥有了传统Visual Basic中所有的动态功能。客户端也可以通过在一个HTML页面中使用VBScript调用ActiveX控件 或DLL实现。 活动的客户机和活动的服务器 如果采用活动客户机和活动服务器 的模式可以充分发挥优势: 分布式的功能便于扩展,灵活的解决方案可以充分利用系统和网络资源。 在三层结构的客户机/服务器 环境中开发部署的应用中,其组件 分布于整个网络上, 总起来完成提供用户界面, 实现业务准则和数据访问的功能,而且由于可以充分利用客户端和服务器 端的处理能力,可以实现更复杂的数据访问功能。 一个活动的服务器 可以负责跟踪客户提交的查询表格,提交查询并返回结果。一个活动的客户机则负责将返回的结果展现给用户, 然后将改变的内容返回给服务器 。另外通过Internet组件 的下载,当用户访问Web站点时, 可以自动更新客户端提交查询和处理结果的准则。 在Web上使用ActiveX组件 ActiveX组件 为Internet技术带来了新的功能。通过Internet组件 的下载,超连接,菜单协商等各种功能,将ActiveX组件 和Internet集成起来,内容和应用程序之间的界线也越来越模糊。另外由于在站点上(在客户机和服务器 之间)分布功能函数,我们可以创建更具扩展性和灵活性的站点。 在Internet应用程序中使用ActiveX文档 使用ActiveX文档, 我们可以开发和Internet/Intranet站点的其他元素紧密集成的Visual Basic的应用程序。利用这些组件 开发出来的应用程序,用户可以透明地在HTML页面和ActiveX文档之间迁移。 可以把ActiveX文档作为Visual Basic为Internet提供的应用。几乎所有现在用标准应用程序完成的工作都可以用ActiveX文档实现。 作为HTML页面中的一个元素,如果在用户的客户机上没有安装ActiveX文档, 当用到它们时, 可以自动地从网上下载;如果客户机上的版本比较旧, 也可以可以自动升级。ActiveX文档的许多特性提供了很好的安装,导航性能,并可以保证很好的持续一致性: Internet组件 的下载---你可以创建一个到你的ActiveX文档的连接,使浏览器 可以自动找到并下载所有需要的组件 。 超连接对象---在一个超连接感知的包容器中,你可以使用Visual Basic的超连接对象的属性和方法以跳转到一个给定的URL或是通过历史的记录清单进行导航。 菜单和协商---由于可以从Word或Excel中获得文档,Visual Basic的ActiveX文档提供了将其菜单嵌入浏览器 中的菜单的功能。例如当文档被装载入Internet Explorer中后,浏览器 的菜单将和你为该ActiveX文档创建的菜单混合。 PropertyBag---当你在Internet Explorer中部署一个ActiveX文档时, 你可以通过PropertyBag对象保持数据的一致性。 下面我们来看一看如何在Internet Explorer中部署一个ActiveX文档。假设我们要通过一个HTML页面中的超连接连接到这个ActiveX文档上: 用HTML创建引用这个ActiveX文档的连接。 由于ActiveX文档将在Internet Explorer中取代HTML页面,所以有必要将组件 的OBJECT标签放在另一个HTML页面中。当跳转到该页面后,一旦ActiveX文档被装载,它就会立刻消失。 用HTML为浏览器 提供下载、注册以及导航到这个ActiveX文档的途径。 在OBJECT标签中应该说明ActiveX文档的类ID和CODEBASE属性。 在同一页面上, 使用VBScript指示Internet Explorer立刻通过相应的.vbd文件导航到该ActiveX文档上。 在Internet应用程序中使用ActiveX控件 ActiveX控件 为你的HTML页面带来了活力。通过HTML和VBScript, 你可以在一个HTML页面上使用ActiveX控件 , 设置它们的属性,调用它们的方法并处理它们的事件。一个包含控件 的的HTML页面仿佛一个Visual Basic的设计窗口。ActiveX控件 可以提供更多的交互式的,生动的用户界面特性,使HTML页面变得更加有活力。 一般需要通过HTML和VBScript的综合手段引用并控制ActiveX控件 的行为。使用HTML为浏览器 提供下载,注册并引用ActiveX控件 引用的途径。在HTML代码的OBJECT标签中需要包括: 控件 的类别ID, 以使程序能在Windows的注册表 中找到它们; ID的属性,以便在VBScript中引用该控件 (类似于Visual Basic中的Name属性); CODEBASE属性,告诉浏览器 如果组件 不在客户机上该去哪儿找; PARAM NAME标签,设置控件 的属性参数。 然后用VBScript编写处理单击事件的代码,使每一个控件 被单击后,程序可以作相应的动作。 Visual Basic专业版中还包括了三个已预先设计好的用于包裹Internet相关技术的控件 , 使你能够扩展已有的应用程序,它们是: Internet Transfer Control---包裹了三种通用的Internet协议:HTTP, FTP和Gopher; WebBrowser Control---包含了许多通过Internet Explorer可以获得的功能; WinSock Control---使你可以连接到一台远程的机器, 然后通过UDP或TCP交换数据。 通过使用这些控件 , 你可以添加从FTP站点自动下载文件的功能,还可以为Visual Basic IDE提供Web浏览器 的Add-in。 在Internet应用程序中使用ActiveX代码组件 无论是在客户端或是在服务器 端, 都可以使用ActiveX代码组件 (.dll或.exe文件), 从而为HTML页面添加功能。 在客户端部署代码组件 , 由于用户的命令无须通过网络传输回服务器 ,可以大大提高运行速度。服务器 端的组件 同样也可以有显示用户界面可视化元素的功能。通过下载一个DLL, 我们可以在HTML页面上添加用户界面的元素,如一个登录对话框; 还可以提供幕后的客户端处理能力,例如一个伴随VBScript的函数库。 客户端的部署工作类似于对ActiveX控件 的使用,你同样需要使用HTML和VBScript代码引用并编写代码组件 。下面给出了一个用HTML和VBScript代码编写调用DLL以显示登录对话框的实例: 1. 使用HTML创建一个窗体,其中包含一个按钮以调用登录对话框: 2. 用HTML为浏览器 提供下载,注册及引用ActiveX组件 的途径: Classid="clsid:2F390484-1C7D-11D0-8908-00A0C90395F4" id="Login" codebase="Login.cab#version=1,0,0,0" > 3. 用VBScript调用组件 中的方法以显示登录对话框: 组件 自身中将包含用于形成登录字符串的代码,并将它发送给服务器 用于验证。 另一种将DLL和Internet技术结合的方法是将它部署在服务器 端。如果你有Internet Information Server (IIS)-包含在Windows NT Server 4.0中, 你可以通过Visual Basic关盘中的Tools目录下的Oleisapi2.dll调用Visual Basic中内置的DLL函数。 Oleisapi2.dll中包含了ISAPI中的所有函数。你可以把DLL部署在HTTP服务器 上, 并通过HTML页面上发送的信息调用其方法。Oleisapi2.dll作为客户请求到DLL之间的中介。由于代码是基于HTML的,这些请求仅仅是简单的URL。 通过服务器 端的DLL可以由客户提供的参数定制返回给客户的HTML页面,还可以管理数据库 的连接,对接受到的请求和返回的结果进行整理和编组。
相关阅读
Windows错误代码大全 Windows错误代码查询 激活windows有什么用 Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录 Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新 windows 10 rs4快速预览版17017下载错误问题 Win10秋季创意者更新16291更新了什么 win10 16291更新内容 windows10秋季创意者更新时间 windows10秋季创意者更新内容 kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
热门文章
没有查询到任何记录。
最新文章
没有查询到任何记录。
微软放弃.net名称的背后 用不着妄自菲薄 对ASP和ASP程序员的一些话 技术分析:.NET的优势与劣势 代码大战:哪种语言会赢得开发的霸权?
人气排行
微软提供的功能强大的ASP-HTML转换工具.它将 用ASP技术实现在WEB网页上浏览目录及文件 从VB 6.0到VB.NET的转换2 从VB 6.0到VB.NET的转换5 IIS 5.1和IIS 6.0一些显著的重要区别 从VB 6.0到VB.NET的转换1 将.Net应用移植到Linux上来的Mono工程 Serv-U :快速构建功能强大的FTP 服务器
查看所有0条评论>>