博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实现端口对端口的聊天 (转)
阅读量:2500 次
发布时间:2019-05-11

本文共 3363 字,大约阅读时间需要 11 分钟。

实现端口对端口的聊天 (转)[@more@]

 

 

 

本可以在互联网和,甚至在一台里面也可以(设置端口就可以了!!!)

模块声明如下:

Public Declare Function ReleaseCapture Lib "user32" () As Long

Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, IParam As Any) As Long
Public Const WM_SYMMAND = &H112
Public Const SC_MOVE = &HF010&
Public Const HTCAPTION = 2

窗口的代码:

Private Sub Form_Load()
txtRemote= Winsock1.LocalIP
Line19.BorderColor = QBColor(15)
Line20.BorderColor = QBColor(15)
Line21.BorderColor = QBColor(0)
Line22.BorderColor = QBColor(0)
Label1.BackColor = &HC07847
Label2.BackColor = &HC07847
Label3.BackColor = &HC07847
Label4.BackColor = &HC07847
Label5.BackColor = &HC07847
Label6.BackColor = &HC07847
Label7.BackColor = &HC07847
Label8.BackColor = &HC07847
Label9.BackColor = &HC07847
Label10.BackColor = &HC07847
Label11.BackColor = &HC07847
Label12.BackColor = &HC07847
label13.BackColor = &HC07847
txtRemoteIP.BackColor = &HC07847
txtRemotePort.BackColor = &HC07847
txtLocalPort.BackColor = &HC07847
Text1.BackColor = &HC07847
Text2.BackColor = &HC07847
End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

ReleaseCapture
ret& = SendMessage(Me.hWnd, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0)
End Sub

Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = 1 Then
Line19.BorderColor = QBColor(0)
Line20.BorderColor = QBColor(0)
Line21.BorderColor = QBColor(15)
Line22.BorderColor = QBColor(15)
End If
On Error GoTo ErrHandler
With Winsock1
.RemoteHost = Trim(txtRemoteIP)
.RemotePort = Trim(txtRemotePort)
  If .LocalPort = Empty Then
  .LocalPort = Trim(txtLocalPort)
  .Bind .LocalPort
  End If
End With
txtLocalPort.Locked = Tru
Label7.Caption = "  Connected to " & Winsock1.RemoteHost & "  "
Text2.SetFocus
ErrHandler:
End Sub

Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Line19.Visible = False Then
Line19.Visible = True
Line20.Visible = True
Line21.Visible = True
Line22.Visible = True
End If
End Sub

Private Sub Image1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = 1 Then
Line19.BorderColor = QBColor(15)
Line20.BorderColor = QBColor(15)
Line21.BorderColor = QBColor(0)
Line22.BorderColor = QBColor(0)
End If
End Sub

Private Sub Label1_Click()

End
End Sub

Private Sub Label11_Click()

MsgBox "郭镇东全力制作!", , "About"
End Sub

Private Sub Label12_Click()

Text1.Text = ""
Text2.Text = ""
End Sub

Private Sub Label2_Click()

Form1.tate = 1
End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer)
Static Last_Line_Feed As Long
Dim New_Line As String
If Trim(Text2) = vbNullString Then Last_Line_Feed = 0
If KeyAscii = 13 Then
  New_Line = Mid(Text2, Last_Line_Feed + 1)
  Last_Line_Feed = Text2.SelStart
  Winsock1.SendData New_Line
  Label7.Caption = "  Sent " & (LenB(New_Line) / 2) & " bytes  "
End If
End Sub

Private Sub Timer1_Timer()

Line19.Visible = False
Line20.Visible = False
Line21.Visible = False
Line22.Visible = False
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)

Dim New_Text As String
Winsock1.GetData New_Text
Text1.SelText = New_Text
Label7.Caption = "  Recieved " & bytesTotal & " bytes  "
End Sub

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10748419/viewspace-976327/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10748419/viewspace-976327/

你可能感兴趣的文章
线程的几种创建方式
查看>>
免费的Bootstrap等待页面的应用模板
查看>>
JS DOM操作(四) Window.docunment对象——操作内容
查看>>
machine learning 之 Recommender Systems
查看>>
新房装修三大空鼓解决方法 为家居装修做好前奏
查看>>
vue.js路由vue-router
查看>>
小程序丨页面去掉转发按钮
查看>>
判断浏览器类型和版本
查看>>
kafka入门介绍
查看>>
[POI2011]SEJ-Strongbox
查看>>
5.学习资源
查看>>
IOS错误总结
查看>>
Win10系列:C#应用控件进阶4
查看>>
std::remove_if
查看>>
前端学HTTP之报文首部
查看>>
设置IIS 兼容32位DLL
查看>>
Python输出格式全总结
查看>>
Python数据结构 将列表作为栈和队列使用
查看>>
UVA 10815 Andy's First Dictionary【set】
查看>>
【CUDA 基础】3.2 理解线程束执行的本质(Part I)
查看>>