Foxtable(狐表)用户栏目专家坐堂 → OPEN QQ 客户端登陆失败


  共有2704人关注过本帖树形打印复制链接

主题:OPEN QQ 客户端登陆失败

帅哥哟,离线,有人找我吗?
victor_lin33
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:160 积分:1453 威望:0 精华:0 注册:2016/3/24 19:00:00
OPEN QQ 客户端登陆失败  发帖心情 Post By:2023/11/23 15:03:00 [只看该作者]

蓝老师:
OPEN QQ 登入一直报错  请帮我看下哪里有问题...谢谢!



客户端的电脑 网管把它门都加入域后一直报错  
服务端电脑原
局网IP: 10.8.8.11...已改为QQServer.ServerIp = "0.0.0.0" 还是不行...
一直调试不成...找不到哪出问题



现在代码:

OpenQQ服务器项目代码 AfterOpenProject

QQServer.ServerIp = "0.0.0.0" '指定IP地址

QQServer.ServerPort = 52177 '指定登录端口

QQServer.HeartbeatInterval = 60 '指定心跳时间

QQServer.HeartbeatTimeout = 180 '指定心跳超时时间

QQServer.PortRange = "52000/53000" '指定随机端口范围

QQserver.Buildin = True '启用内置身份验证

QQServer.Start() '启动QQServer
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->


服务端代码 UserLogging
If e.User IsNot Nothing Then

       e.Success = True '允许登录

    For Each u As UserInfo In Users

          If u.Name <> e.User.Name Then

            If u.Group > "" Then

                e.Buddies.Add(u.Group & "." & u.Name)

             Else

                e.Buddies.Add(u.Name)

               End If

        End If

     Next

 End If

服务端代码ReceivedMessage

If e.Message = "GetDate" Then

    e.ReturnValue = Date.Now

End If

 
服务端项目只有一张"用户表"
用户表按照帮助档建立只3列  Name   Type   Config


客户端项目代码 LoadUserSetting

QQClient.ServerIP = "10.8.8.11" '指定服务器IP地址

QQClient.ServerPort = "52177" '指定服务器端口

   

If QQClient.Start() = True  Then'如果登录成功

    QQClient.OpenChatWindow()

    'e.Form.Controls("btnChat").Enabled = True

    Dim msg As String = "恭喜,OpenQQ登录成功!"

    If QQClient.ServerMessage > "" Then '如果服务器返回了欢迎信息

        msg = msg & QQClient.ServerMessage

    End If

    'ConfigBar.Items("OpenQQ").SmallImage = GetImage("online.ico")

    popMessage(msg, "提示", PopiconEnum.Infomation, 5)

Else '如果登录失败,显示服务器返回错误信息'

    ' e.Form.Controls("btnChat").Enabled = False

    PopMessage("QQClient登录失败,原因:" & vbcrlf & QQClient.ServerMessage, "提示", PopiconEnum.Error, 5)

End If




 回到顶部
帅哥哟,离线,有人找我吗?
victor_lin33
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:160 积分:1453 威望:0 精华:0 注册:2016/3/24 19:00:00
  发帖心情 Post By:2023/11/23 15:04:00 [只看该作者]

现在用没加入域的客户端电脑 也一样报错

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111427 积分:567211 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/11/23 15:09:00 [只看该作者]

ping一下服务器IP通不通。

看看服务器端口是不是没有开放

 回到顶部
帅哥哟,离线,有人找我吗?
victor_lin33
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:160 积分:1453 威望:0 精华:0 注册:2016/3/24 19:00:00
  发帖心情 Post By:2023/11/24 19:25:00 [只看该作者]

蓝老师: 
最终在叶大佬的指导协助 我啃了16天的成果...调试到今日终于搞定...!!!
>系统推送消息OK
>好友分组OK
>相互信息在线 离线互传都OK

客户端项目用户(外部表按照帮助档作 多加了remark 共4列 Name Type Cofing Remark) 
客户端项目用户登录 = OPENQQ用户登录 
>好友分组 直接用客户端项目用户资料的分组生成

过程很难受 但也很享受...
我感恩叶大佬的支持 协助我搞懂这OPEN QQ...
我把最终代码借论坛分享给大家...可能还有些能优化  但请大家多指正...
希望像我这种小白 买永开版的 都能少走弯路  代码复制去用... 


服务端的项目事件 LoadUserSetting
Forms("QQServer").Show

 回到顶部
帅哥哟,离线,有人找我吗?
victor_lin33
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:160 积分:1453 威望:0 精华:0 注册:2016/3/24 19:00:00
  发帖心情 Post By:2023/11/24 19:29:00 [只看该作者]


启动按钮的 Click
QQServer.ServerIp = e.Form.Controls("txtIP").Value '指定IP地址
QQServer.ServerPort = e.Form.Controls("txtPort").Value '指定端口
QQServer.HeartbeatInterval = e.Form.Controls("txtInterval").Value '指定心跳时间
QQServer.HeartbeatTimeout = e.Form.Controls("txtTimeOut").Value '指定心跳超时时间
QQserver.Buildin = True '启用内置身份验证
QQServer.Start() '启动QQServer

暂停按钮的 Click
QQServer.Stop()

推送系统消息按钮的 Click
Forms("发送系统信息").Open


send 按钮的 Click

For Each u As UserInfo In Users
    If u.Name <> UserName Then 
        If u.Group <> "" Then
            QQServer.SendNotice(u.Group & "." & u.Name , "{!}" & ""& e.Form.Controls("TextBox1").Text &"" )
        Else
            QQServer.SendNotice(u.Name , "{!}" & "" & e.Form.Controls("TextBox1").Text & "")
        End If
    End If



服务端的网路监视事件 UserLogging

For Each u As UserInfo In Users
        If u.Name <> e.UserName Then 
            If u.Group <> "" Then
                e.Buddies.Add(u.Group & "." & u.Name)
            Else
                e.Buddies.Add(u.Name)
            End If
        End If
    Next

服务端的网路监视事件 ReceivedMessage
If e.Message = "约定格式的信息" Then
    Users.Load()
End If

If e.Message = "GetDate" Then
    e.ReturnValue = Date.Now
End If


客户端的项目事件 LoadUserSetting

QQClient.ServerIP = "10.8.8.11" '指定服务器IP地址

QQClient.ServerPort = 52177 '指定服务器端口
QQClient.UserName = ""'UserName
'QQClient.UserName = User.Group & "." & UserName
QQClient.Password = ""
QQClient.stop
If QQClient.Start() = True Then'如果登录成功
    Dim msg As String = "恭喜,OpenQQ登录成功!"
    If QQClient.ServerMessage > "" Then '如果服务器返回了欢迎信息
        msg = msg & QQClient.ServerMessage
    End If
    popMessage(msg, "提示", PopiconEnum.Infomation, 5)
Else '如果登录失败,显示服务器返回错误信息'
    PopMessage("QQClient登录失败,原因:" & vbcrlf & QQClient.ServerMessage, "提示", PopiconEnum.Error, 5)
End If
If QQClient.Ready Then
    QQClient.OpenChatWindow()
End If

客户端的网路监视事件 Connected

If User.Type <> UserTypeEnum.User Then '只有开发者和管理员才有必要通知服务端刷新
    QQClient.Send("约定格式的信号")
End If



 回到顶部
帅哥哟,离线,有人找我吗?
victor_lin33
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:160 积分:1453 威望:0 精华:0 注册:2016/3/24 19:00:00
  发帖心情 Post By:2023/11/24 19:36:00 [只看该作者]

窗口图 明天再传

 回到顶部