首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 达人帮忙~Winsock和MSHFlexGrid2(解决高分马上奉送) [已结贴,结贴人:scteam]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-21 23:35:57 楼主
    问题一:如何同时接收发送多个数据?
    服务端:
    Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
    Dim strData As String
    Winsock1.GetData strData, vbString '当有数据到达时,调用GetData方法接收之
    MSHFlexGrid2.TextMatrix(1, 1) = strData '将接收的内容更新显示MSHFlexGrid2的1行1排里
    MSHFlexGrid2.TextMatrix(1, 2)~~~~~这行代码怎么接送数据?
    End Sub
    客户端:
    Private Sub Winsock1_Connect()
    If Winsock1.State = sckConnected Then Winsock1.SendData Winsock1.LocalHostName '将计算机名称显示在服务端MSHFlexGrid2的1行1排里
    If Winsock1.State = sckConnected Then Winsock1.SendData Winsock1.LocalIP~~~~~这行数据如何发送到MSHFlexGrid2的1行2排里?
    End Sub
    问题二:MSHFlexGrid2里不止一行数据,如何使客户端同时获得相应行的数据并且发送到相应的行.


    开开始学习,请达人们简单写下代码并注释下,别光理论或光是代码啊,麻烦了.
    100  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-22 00:15:291楼 得分:0
    不明白,你要做虾米?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-22 00:33:092楼 得分:0
    你没有把这个题目说清楚

    送是senddata 接是getdata 用这2个方法即可.

    另外你的sendata IP是什么意思,只是做为数据传递还是其他?如果不是作为数据传递,直接设置就可以了

    或者从服务端进行监听就可以啦
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-22 15:34:043楼 得分:0
    就是多个senddata getdata 怎么同时接收发送啊。顶下.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-22 16:35:054楼 得分:0
    增加协议,如
    Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
    Dim strData As String
    Winsock1.GetData strData, vbString '当有数据到达时,调用GetData方法接收之
    if left(strData,1)="1" then
    MSHFlexGrid2.TextMatrix(1, 1) = strData '将接收的内容更新显示MSHFlexGrid2的1行1排里
    end if
    if left(strData,1) = "2" then
    MSHFlexGrid2.TextMatrix(1, 2)~~~~~这行代码怎么接送数据?
    end if
    End Sub
    客户端:
    Private Sub Winsock1_Connect()
    If Winsock1.State = sckConnected Then Winsock1.SendData "1:" + Winsock1.LocalHostName '将计算机名称显示在服务端MSHFlexGrid2的1行1排里
    If Winsock1.State = sckConnected Then Winsock1.SendData "2:" + Winsock1.LocalIP~~~~~这行数据如何发送到MSHFlexGrid2的1行2排里?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-22 20:54:275楼 得分:0
    1,同时接收发送多个数据
      vb做不到
    2.在发送数据时,同时发送数据的行列
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-22 21:31:156楼 得分:0
    服务端:
    Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
    Dim strData As String
    Dim i As Long
    Winsock1.GetData strData
    For i = 1 To Len(strData)
    If Mid(strData, i, 1) = "@" Then
    MSHFlexGrid2.TextMatrix(1, 1) = Left(strData, i - 1)~~~~~~``现已正常获得客户端Winsock1.LocalHostName
    MSHFlexGrid2.TextMatrix(1, 2) = Right(strData, Len(strData) - i)~~~~~~~~~现已正常获得客户端Winsock1.Winsock1.LocalIP
    MSHFlexGrid2.TextMatrix(1, 3) =~~~~这里代码如何写?
    MSHFlexGrid2.TextMatrix(1, 4 =~~~~这里代码如何写?
    MSHFlexGrid2.TextMatrix(1, 5 =~~~~这里代码如何写?
    End If
    Next i
    End Sub

    客户端:
    Private Sub Winsock1_Connect()
    If Winsock1.State = sckConnected Then
    Winsock1.SendData (Winsock1.LocalHostName & "@" & Winsock1.LocalIP & "@" & "TextMatrix(1, 3)的" & "@" & "TextMatrix(1, 4)的" & "@" & "TextMatrix(1, 5的")
    End If
    End Sub
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-22 21:36:127楼 得分:0
    服务端:
    Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
    Dim strData As String
    Dim i As Long
    Dim mKey As String
    Winsock1.GetData strData 
    For i = 1 To Len(strData) 
    If Mid(strData, i, 1) = "@" Then
    mKey = Left(strData, i - 1)
    strData = Right(strData, Len(strData) - i)
    Exit For
    End If
    Next i   
    Select Case Val(mKey)
            Case 1
    MSHFlexGrid2.TextMatrix(1, 1) =~~~~这里代码如何写?
            Case 2
    MSHFlexGrid2.TextMatrix(1, 2) =~~~~这里代码如何写?
            Case 3
    MSHFlexGrid2.TextMatrix(1, 3) =~~~~这里代码如何写?
            Case 4
    MSHFlexGrid2.TextMatrix(1, 4) =~~~~这里代码如何写?
            Case 5
    MSHFlexGrid2.TextMatrix(1, 5) =~~~~这里代码如何写?
    End Select   
    End Sub
    客户端:客户机端用Winsock1.SendData发命令。命令包括命令ID和命令参数,它们用符号“@”隔开。~~~~这里代码如何写?

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-06-23 12:48:288楼 得分:100
    dim kk as variant
    kk = split(strData,"@")
    看看kk[0],kk[1]...都什么值,就不多写了.
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved