正文

[VB]用VB的Winsock简单模拟QQ消息发送2006-05-21 14:42:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/fengfei/14458.html

分享到:

            模拟QQ消息发送需要建立2个工程,一个作为服务器端,一个作为客户端,偶通过用客户端向服务器端发送消息,并在服务器端显示发送的消息来介绍winsock。   大家可以在此基础上用VB作个局域网的聊天室。  

偶也是刚学winsock,有什么错误或更好的方法请大家多多指教。。呵呵。

             首先新建一个工程,作为服务器,在部件里找到Micrsoft Winsock Control 6.0(sp6)并选中,窗口如下:



其中: 为Winsock控件

服务器的代码如下(有注释):注意Winsock控件的名称为“ServerTCP”

Private Sub cmdExit_Click()
    ServerTCP.Close
    Unload Me
   
End Sub

Private Sub Form_Load()
    Me.Left = 100
    Me.Top = 100
   
    ServerTCP.LocalPort = 1001      ' 设置本地端口,可以随便设置
    ServerTCP.Listen                ' 桢听状态,简单的说就是将服务器打开
   
End Sub


Private Sub ServerTCP_ConnectionRequest(ByVal requestID As Long)    ' 当客户端请求连接时,则触发此事件
    If ServerTCP.State <> sckClosed Then ServerTCP.Close            ' 当服务器为打开状态则关闭
   
    ServerTCP.Accept requestID
      
End Sub


Private Sub ServerTCP_DataArrival(ByVal bytesTotal As Long)     ' 当数据到达时,触发DataArrival事件
    Dim strDate As String
   
    ServerTCP.GetData strDate   ' 接受数据
   
    If txtReceived.Text = Empty Then
        txtReceived.Text = strDate
   
    Else
        txtReceived.Text = txtReceived.Text & vbCrLf & strDate
   
    End If

End Sub

             然后再新建一个工程,作为客户端,一样要在部件里找到Micrsoft Winsock Control 6.0(sp6)并选中,窗口如下:


客户端的代码如下(有注释):注意Winsock控件的名称为“ClientTCP”

Private Sub cmdClear_Click()    ' 清空发送框
    txtSend.Text = Empty
   
End Sub

Private Sub cmdConnect_Click()
   ClientTCP.Connect    ' 连接到服务器
   cmdSend.Enabled = True
   
End Sub

Private Sub cmdExit_Click()
    ClientTCP.Close
    Unload Me
   
End Sub

Private Sub cmdSend_Click()     ' 发送消息
    If Trim(txtSend.Text) <> Empty Then
        ClientTCP.SendData Trim(txtSend.Text)   ' 发送消息
        txtSend.Text = Empty
       
    End If
   
End Sub

Private Sub Form_Load()
    ClientTCP.RemoteHost = "127.0.0.1"  ' 设置远程服务器的名称,既服务端的IP
    ClientTCP.RemotePort = 1001         ' 设置为远程服务器的端口号,必须与服务器设置的端口号一样
   
    cmdSend.Enabled = False
   
End Sub

OK! 所有代码以完成,下面来看看效果怎样:

先在客户端按“连接。。”的命令按钮,是客户端连接到服务器,这时“发送”按钮则不在是灰色,然后再在消息框中写消息,写完消息后按“发送”按钮发送消息。 则消息会在服务器窗口中显示:


按了发送消息后:


阅读(7006) | 评论(3)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册