仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 396|回复: 8
打印 上一主题 下一主题

[学习教程] ASP编程:用WinSock计划Chat程序(转)

[复制链接]
愤怒的大鸟 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 23:21:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
国内有些大的CRM厂商的ASP就写得不错.无论是概念还是它里面用JAVASCRIPT的能力.并不是说现在的程序员用了ASP.NET来写程序就可以说自己高档了程序|计划择要

  跟着Internet的兴旺开展,收集界面的交换使我们可以立即收到各地所产生的各项信息。我们在利用各类Browser扫瞄各网点时,只需Server能供应Chat(闲谈)的服务项目,我们就能够经由过程Browser所供应的Chat程序与收集上的其他利用者立即对谈及交换心得。本篇文章经由过程VisualBasic5.0所供应的WInSockcontrol,计划一个Chat使用程序。我们经由过程Client及Server之间的文件传输,能够懂得Chat程序的事情道理。

  WinSockcontrol简介

  WinSock是windows体系供应的一种收集文件传输协定。以往我们利用WinSock计划程序时,必需挪用体系供应的API来完成;可是在VisualBasic中挪用API,因触及参数传送范例,用起来其实不便利。VisualBasic5.0供应WinSockcontrol简化我们的计划流程。它能够使用UserDatagramProtocol(UDP)或TransmissionControlProtocol(TCP),来计划收集的Client-Server程序。

  TCP是一种Connectionbase的Protocol,在文件传输时会先行创建Link,经由过程Link可确保文件传输的准确性;UDP则是一种Connectionless的Protocol,它在传输文件时不会确保传输真个文件可以准确无误的传送到吸收端,以是当我们利用UDP

  protocol时,我们一般要本人作吸收确认的事情。

  UDPprotocol看起来仿佛对照没效力,实在否则!UDPprotocol有一个优点:当文件很小,或我们要做收集boardcast(播送)时,会对照无效率。

  以是了!当我们使用WinSock计划程序时,起首要依本人的必要,决意利用那一种protocol。本文将分离教您利用TCP及UDPProtocol来计划Chat程序。
Step1:找出Domainname及IPaddress

  在“我的电脑”当选择“把持面板”。Doubleclick“收集”选项,选择“标识”,您将会觉察您的盘算机称号、事情组名等信息。将它纪录起来,我们稍后会用到。

  Step2:计划TCPServer程序

  在File选项当选NewProject创建一个新的工程,在屏幕上会看到很多选项,如ActiveXDocument.EXE、ActiveXDocument.DLL、ActiveX.EXE、ActiveXControl等,选Standard.EXE。

  接着在Project下选择Property属性选项,在General选项下将ProjectName改成TCP-Server,并将Form称号及Caption变动为Server。在屏幕的Form上到场一个WinSockcontrol,取名为Tcps;到场两个TextBoxcontrol(Outtext、Intext),并在两个TextBox前到场两个label,分离将caption改成Outtext、Intext。

  〈TextBox〉

  Name

  ------------------------------------------------

  Outtext(输入文件)

  Intext(输出文件)

  〈Label〉

  Caption

  ----------------------------------------------------

  Outtext(输入文件)

  Intext(输出文件)

  在Form_Load()中到场以下程序代码,这个举措是设置好我们Local的传输端口,并到吸收的形态:

  Tcps.protocol=0-scktcpprotocol

  Tcps.LocalPort=1002

  Tcps.Listen

  双击Tcps,在Tcps_ConnectionRequest(ByValrequestIDAsLong)中到场以下程序代码,这暗示winsock承受了毗连哀求:

  Tcps.AcceptrequestID

  双击Outtext到Outtext_change(),到场以下程序代码,当Outtext内容改动后,文件就会主动送出:

  Tcps.SendDataOuttext.text

  在Tcps_DataArrival(ByValbytesTotalAsLong)中到场以下程序代码,这是用来把所吸收的文件显现在Intext这个TextBox中。

  DimSAsStrIng

  Tcps.GetDataS

  InText.Text=S

  如许我们就完成了Server真个计划。

  Step3:计划TCPClient程序

  在File选项当选择NewProject创建一个新的工程,在屏幕上看到很多选项,如ActiveXDocument.EXE、ActiveXDocument.DLL、ActiveX.EXE、ActiveXControl等。选Standard.EXE。接着在Project下,选择Property属性选项,在General选项下,将ProjectName改成TCP-Client,并将FORM称号及Caption变动为Client。

  

  在屏幕的Form上到场一个WinSockcontrol,取名为Tcpc,将protocolproperty设置成0-scktcpprotocol,到场两个TextBoxcontrol(Outtext、Intext),并在两个TextBox前到场两个Label,分离将其Caption改成Outtext、Intext。接着放进一个Button(button1)并将Caption改成Connect。
(TextBox)

  Name

  -----------------------------------------------------

  Outtext(输入文件)

  Intext(输出文件)

  (Label)

  Caption

  --------------------------------------------------------

  Outtext(输入文件)

  Intext(输出文件)

  〈Button〉

  NameCaption

  --------------------------------------------------------

  Button1(实行创建session命令)Connect

  在Form_Load()中到场以下程序代码,这个举措是设置好我们Remote所要毗连的传输端口及其收集称号。我们要毗连的盘算机收集称号为DAVID:

  Tcpc.RemoteHost="David"

  Tcpc.RemotePort=1002

  双击Outtext到Outtext_change()到场以下程序代码,当Outtext内容改动后,文件会主动送出:

  Tcpc.SendDataOuttext.text

  在Tcpc_DataArrival(ByValbytesTotalAsLong)中到场以下程序代码,这是用来把所吸收的文件显现在Intext这个TextBox中。

  DimSAsStrIng

  Tcpc.GetDataS

  InText.Text=S

  如许就完成了Client真个计划。

  Step4:测试TCPChat程序

  分离实行Server及Client程序,这时候在Client的屏幕上显现In及OutTextBox及一个ConnectButton;在Server屏幕上显现In及OutTextBox。

  我们按Client程序Connectbutton创建毗连,毗连创建乐成后,我们可实验在Client的Outbox中输出一些字符串:Hellonicetomeet

  you!我们将在Server真个Inbox看到这些字串。

  接着我们在Server的Outbox也输出一些字符串:Nicetomeetyou,too!

  我们将在Client真个Inbox看到这些字符串。了局证实我们乐成了!
</p>ASP在国内异常流行,因为国内大多使用的是盗版的Windows和盗版的SQLServer,而ASP+COM+SQLServer实际上也是一种不错的搭配,其性能也不输于PHP+MYSQL,特别是Windows系统和SQLServer都有图形界面,比APACHE和MYSQL易于维护,因此对于不重视知识产权的国家来说也是一种不错的选择。
分手快乐 该用户已被删除
沙发
发表于 2015-1-20 09:33:02 | 只看该作者
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
金色的骷髅 该用户已被删除
板凳
发表于 2015-1-24 12:03:39 | 只看该作者
不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍
爱飞 该用户已被删除
地板
发表于 2015-2-1 09:54:33 | 只看该作者
没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。
变相怪杰 该用户已被删除
5#
发表于 2015-2-3 06:07:08 来自手机 | 只看该作者
以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。
灵魂腐蚀 该用户已被删除
6#
发表于 2015-2-8 19:55:52 | 只看该作者
哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?
只想知道 该用户已被删除
7#
发表于 2015-2-26 00:34:09 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
再现理想 该用户已被删除
8#
发表于 2015-3-15 22:07:03 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
活着的死人 该用户已被删除
9#
发表于 2015-3-22 05:54:14 | 只看该作者
用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 10:33

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表