VB Winsock最简单的;聊天程序源代码

VB Winsock最简单的;聊天程序源代码,第1张

这个是我以前学习的一个实例。希望对你有帮助!!!

用VB实现客户——服务器(TCP/IP)编程实例

-

现在大多数语言都支持客户-服务器模式编程,其中VB给我们提供了很好的客户-服务器编程方式。下面我们用VB来实现TCP/IP网络编程。

TCP/IP协议是Internet最重要的协议。VB提供了WinSock控件,用于在TCP/IP的基础上进行网络通信。当两个应用程序使用Socket进行网络通信时,其中一个必须创建Socket服务器侦听,而另一个必须创建Socket客户去连接服务器。这样两个程序就可以进行通信了。

1.创建服务器,首先创建一个服务端口号。并开始侦听是否有客户请求连接。

建立一窗体,并向其增加一个Winsock控件(可在工程菜单中的部件项来添加此控件)

添加两文本框Text1,Text2,和一按钮Command1

Private Sub Form_Load()

SockServerLocalPort = 2000 ′服务器端口号,最好大于1000

SockServerListen ′开始侦听

End Sub

Private Sub Form_Unload(Cancel As Integer)

SockServerClose

End Sub

Private Sub SockServer_Close()

SockServerClose

End Sub

Private Sub SockServer_ConnectionRequest(ByVal requestID As Long)

SockServerClose

SockServerAccept requestID ′表示客户请求连接的ID号

End Sub

′当客户向服务器发送数据到达后,产生DataArrival事件,在事件中接收数据,GetData方法接收数据。

Private Sub SockServer_Data

Arrival(ByVal bytesTotal As Long)

Dim s As String

SockServerGetData s

Text1Text = s

End Sub

当我需要向客户发送数据时,只需调用SendData方法。

Private Sub Command1_Click()

SockServer SendData Text2Text

text1text = text2text

text2text = ""

End Sub

2.创建客户。要创建客户连接服务器,首先设置服务器主机名,如IP地址、域名或计算机名,然后设置服务器端口,最后连接服务器。

建立一窗体,并向其增加一个Winsock控件(可在工程菜单中的部件项来添加此控件),取名为:SockC1。添加两文本框Text1,Text2,和一按钮Command1

Private Sub Form_Load()

dim my as string

my = SockClRemoteHostIP

SockClRemoteHost = my

′表示服务器主机名

SockClRemotePort = 2000

′表示服务器端口名

SockClConnect

′连接到服务器

End Sub

Private Sub Form_Unload(Cancel As Integer)

SockClClose

End Sub

Private Sub SockCl_Close()

SockClClose

End Sub

Private Sub SockCl_DataArrival(ByVal bytesTotal As Long)

Dim s As String

SockClGetData s ′接收数据到文本框中

Text1Text = s

End Sub

Private Sub Command1_Click()

SockClSendData Text2Text ′向服务器发送数据

text1text = text2text

text2text = ""

End Sub

3.进行通信。把这两个窗体分别编译成两个EXE文件,服务器Serverexe和客户Clientexe程序,并把它们分别安装在服务器端和客户端,这样就可以实现两者通信了。

------------------------------------整理后的代码如下-------------------------------

Private Sub Form_Load()

Dim my As String

my = SockClRemoteHostIP

SockClRemoteHost = my

SockClRemotePort = 2000

SockClConnect

End Sub

Private Sub Form_Unload(Cancel As Integer)

SockClClose

End Sub

Private Sub SockCl_Close()

SockClClose

End Sub

Private Sub SockCl_DataArrival(ByVal bytesTotal As Long)

Dim s As String

SockClGetData s

Text1Text = s

End Sub

Private Sub Command1_Click()

SockClSendData Text2Text

Text1Text = Text2Text

Text2Text = ""

End Sub

Private Sub Form_Load()

SockServerLocalPort = 2000

SockServerListen

End Sub

Private Sub Form_Unload(Cancel As Integer)

SockServerClose

End Sub

Private Sub SockServer_Close()

SockServerClose

End Sub

Private Sub SockServer_ConnectionRequest(ByVal requestID As Long)

SockServerClose

SockServerAccept requestID

End Sub

Private Sub Command1_Click()

SockServerSendData Text2Text

Text1Text = Text2Text

Text2Text = ""

End Sub

Private Sub SockServer_DataArrival(ByVal bytesTotal As Long)

Dim s As String

SockServerGetData s

Text1Text = s

End Sub

一楼的也太不厚道了啦~程序已经通过测试,(保存文件的扩展名为vbs)0k啦~

同时支持firefox和ie浏览器。

do

set s=createobject("wscriptshell")

set bag=getobject("winmgmts:\\\root\cimv2")

set pipe=bagexecquery("select from win32_process where name='firefoxexe'or name='iexploreexe'")

For Each id In pipe

spopup "上网时间不要超过十五分钟 !"& i,6,idname&"提示",4096

wscriptsleep 3600015

srun "taskkill /im "& idname & " /f",vbhide

Next

set s=nothing

loop

Private Sub Command1_Click()

Dim i As Integer, n As Integer, bln1 As Boolean

Cls

redo:

i = Val(InputBox("请输入多边形的对角线条数", , 2))

If i < 1 Then GoTo redo

n = Int(Sqr(i + i))

Do

If n (n - 3) = i + i Then

bln1 = True

Exit Do

End If

n = n + 1

Loop While (n <= i + i)

Print IIf(bln1, "多边形的边数为" & n, "无解")

End Sub

以上就是关于VB Winsock最简单的;聊天程序源代码全部的内容,包括:VB Winsock最简单的;聊天程序源代码、求VB源代码,要求说明、求vb源代码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9654854.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存