VB如何使用Winsock进行1对多通信

是在局域网内实现的通讯01.是不是建立几个连接就需要几个Winsock02.自己有服务器的话如何做呢?是不是简单很多?具体怎样做?03.自己没有服务器怎么做?... 是在局域网内实现的通讯
01. 是不是建立几个连接就需要几个Winsock
02.自己有服务器的话如何做呢?是不是简单很多?具体怎样做?
03.自己没有服务器怎么做?
展开
 我来答
zdingyun
推荐于2017-09-16 · 知道合伙人软件行家
zdingyun
知道合伙人软件行家
采纳数:15429 获赞数:48169
1982年上海业余工业大学化工系毕业 现退休

向TA提问 私信TA
展开全部

VB可通过通过创建Winsock控件数组,使用一个控件Winsock也可以同时接受多个连接请求。不需要关闭连接,而只需创建新的控件实例(通过设置其索引属性),然后在新的实例上调用 Accept 方法。

  • 提供了访问 TCP 和 UDP 网络服务的方便途径。Microsoft Access、Visual Basic、Visual C++ 或 Visual FoxPro 的开发人员都可使用它。为编写客户或服务器应用程序,不必了解 TCP 的细节或调用低级的 Winsock APIs。通过设置控件的属性并调用其方法就可轻易连接到一台远程机器上去,并且还可双向交换数据。

  • 代码实例:

    下面的代码假定名为 sckServer 的窗体上有一个 Winsock 控件,它的 Index 属性被设置为0;因此控件是控件数组的一部分。在声明部分,声明了一个模块级的变量 intMax。在窗体的 Load 事件中,intMax 被设置为 0,数组中第一个控件的
    LocalPort 属性被设置为 1001。然后调用控件的 Listen 方法,使之成为“监听”控件。在连接请求到达时,代码将检测 Index 是否为 0(“监听”控件的值)。如果为 0,监听控件将增加 intMax 的值,并使用该号码来创建新的控件实例。然后,使用新的控件实例接受连接请求

    Option Explicit

        Private intMax As Long


    Private Sub Form_Load()

        intMax = 0

        sckServer(0).LocalPort = 1001

        sckServer(0).Listen

    End Sub


    Private Sub sckServer_ConnectionRequest _

        (Index As Integer, ByVal requestID As Long)

        If Index = 0 Then

            intMax = intMax + 1

            Load sckServer(intMax)

            sckServer(intMax).LocalPort = 0

            sckServer(intMax).Accept requestID

            Load txtData(intMax)

        End If

    End Sub

ydm_bd
推荐于2017-09-02 · TA获得超过884个赞
知道小有建树答主
回答量:195
采纳率:0%
帮助的人:94.3万
展开全部
01.建立几个连接就需要几个Winsock,并且最好使用Winsock数组
Winsock数组就是form中画一个Winsock,把index属性设置成0
private sub form_load()
Winsock(0).localport=5555 '服务器端口
Winsock(0).listen
end sub
'重要: 当ConnectionRequest时,加载一个Winsock,用新的Winsock响应,新的Winsock会继承新的Winsock(0)的端口属性
Private Sub Winsock1_ConnectionRequest(Index As Integer, ByVal requestID As Long)
Load Winsock1(Winsock1.Ubound+1)
Winsock1(Winsock1.Ubound).Accept requestID
End Sub
'这样就可以了

02:同下
03:服务器比普通计算机性能好,不过假如通讯规模小,普通计算机就行了,再去设置一下"TCP并发连接数",具体通讯代码和服务器是 一样的.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
上海长英
2011-08-10 · 上海长英,自动化电气设计,软件编程。
上海长英
采纳数:1072 获赞数:22869

向TA提问 私信TA
展开全部
你看看有关VBWinsock的书籍吧,上面讲的比较全面
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式