| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦   
共有 226 人关注过本帖
标题:请帮忙,关于网络使用的问题
收藏  订阅  推荐  打印
zfjyyzycl
Rank: 3Rank: 3
等级:中级会员
帖子:213
积分:2330
注册:2006-4-15
请帮忙,关于网络使用的问题

客户端和服务器

一个测试网络和服务器状态的表单,
Private Sub Form_Load()
    Winsock1.RemoteHost = "46.0.180.153"
    Winsock1.RemotePort = 5000
    Winsock1.Connect
End Sub
Private Sub Command2_Click()
    If Text1.Text = "" Or Text2.Text = "" Then
        Call MsgBox("服务器IP地址和端口不能为空,请重新输入!", vbonlyok, "警告")
        Exit Sub
    End If
    On Error GoTo errhandle:
    Winsock1.SendData "001"
errhandle:
    If Err.Number = 40006 Then
        MsgBox "网络不通、与服务器失去联系或者服务器没有启动111!"
    End If
End Sub
以上可以成功的从服务器根据客户端发送的信息,获取返回的相应的信息

但是如果我这样做,将联接的部分放到按钮里
Private Sub Command2_Click()
    Winsock1.RemoteHost = "46.0.180.153"
    Winsock1.RemotePort = 5000
    Winsock1.Connect

    If Text1.Text = "" Or Text2.Text = "" Then
        Call MsgBox("服务器IP地址和端口不能为空,请重新输入!", vbonlyok, "警告")
        Exit Sub
    End If
    On Error GoTo errhandle:
    Winsock1.SendData "001"
errhandle:
    If Err.Number = 40006 Then
        MsgBox "网络不通、与服务器失去联系或者服务器没有启动111!"
    End If
End Sub
执行到 发送测试数据的时候就出现了
实时错误‘40006’
所需事物或请求的错误协议或联接状态

到底怎么回事啊
请帮忙,不胜感激
2008-8-5 10:43
octillion
Rank: 3Rank: 3
等级:中级会员
帖子:195
积分:2156
注册:2008-7-24

Winsock1.Connect
......
    Winsock1.SendData "001"


请你理解,Winsock的SendData不是在Connect方法之后这样使用的。
具体用法见使用成功的程序。
2008-8-5 11:37
simpson
Rank: 4
等级:高级会员
威望:5
帖子:775
积分:7938
注册:2006-11-16

需要检测连接状态    待成功连接再发送
2008-8-5 20:59
共有 225 人关注过本帖
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.048858 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved