我想在兩台機子之間進行通訊﹐就用一個聊天軟件一樣﹐
請問﹐誰可以給個簡單的例子來參考參考!!
謝了

解决方案 »

  1.   

    以前的帖子关于Winsock的讨论很多啊,搜一下吧。
      

  2.   

    看msdn winsock 控件中有个tcp的例子
      

  3.   

    http://www.moon-soft.com/download/soft/487.htm
      

  4.   

    Private Sub cmd_connect_Click()
    '取得远端机的IP,并请求连接
    sockclient.RemoteHost = txt_ip.Text
    sockclient.Connect
    End SubPrivate Sub cmd_end_Click()
    '发送退出请求,由服务器关闭
    sockclient.SendData "~quit~"
    End SubPrivate Sub cmd_quit_Click()
    End
    End SubPrivate Sub cmd_send_Click()
    '发送文本
    Dim MySendData As String
    MySendData = Txt_send.Text
    sockclient.SendData MySendData
    Txt_send.Text = ""
    End SubPrivate Sub Form_Load()
    '服务器开始监听
    Sockserver.Listen
    End SubPrivate Sub sockclient_close()
    '激活连接按钮
    cmd_connect.Enabled = True
    Txt_send.Text = ""
    Txt_get.Text = ""
    End SubPrivate Sub sockclient_connect()
    MsgBox "连接成功", vbInformation, "ok!"
    '使连接按钮无效,避免错误
    cmd_connect.Enabled = False
    End SubPrivate Sub sockclient_error(ByVal number As Integer, description As String, ByVal scode As Long, ByVal source As String, ByVal helpfile As String, ByVal helpcontext As Long, canceldisplay As Boolean)
    '出错后关闭
    sockclient.Close
    End SubPrivate Sub Sockserver_close()
    cmd_connect.Enabled = True
    End SubPrivate Sub Sockserver_connectionrequest(ByVal requestID As Long)
    '判断服务器不关闭时接受连接请求
    If Sockserver.State <> sckClosed Then Sockserver.Close
    Sockserver.Accept requestID
    End SubPrivate Sub sockserver_dataarrival(ByVal bytestotal As Long)
    Dim MyGetData As String
    '得到数据
    If MyGetData = "~quit~" Then
       Sockserver.Close
       Sockserver.Listen
    End If
    Sockserver.GetData MyGetData
    Txt_get.Text = MyGetData
    End SubPrivate Sub Timer1_Timer()
    '不断的监控服务器和客户端状态,可以添加判断更多的状态
    Select Case sockclient.State
       Case 0: StatusBar1.Panels(2) = "客户端关闭"
       Case 1: StatusBar1.Panels(2) = "客户端打开"
       Case 7: StatusBar1.Panels(2) = "客户端已经连接"
    End Select
    Select Case Sockserver.State
       Case 0: StatusBar1.Panels(1) = "服务器关闭"
       Case 1: StatusBar1.Panels(1) = "服务器打开"
       Case 7: StatusBar1.Panels(1) = "服务器已经连接"
    End Select
    End SubPrivate Sub txt_send_keypress(keyAscii As Integer)
    '发现按下回车键时就发送文本
    If keyAscii = 13 Then
       cmd_send_Click
    End If
    End Sub