Foxtable(狐表)用户栏目专家坐堂 → 关于启动QQ客户端的问题


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

主题:关于启动QQ客户端的问题

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


加好友 发短信
等级:童狐 帖子:231 积分:1751 威望:0 精华:0 注册:2020/2/3 11:16:00
关于启动QQ客户端的问题  发帖心情 Post By:2020/3/21 12:41:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:万能五笔截图_20200321123141.png
图片点击可在新窗口打开查看
出在上面截图的问题是什么呢?


客户端登录按键代码如下:If QQClient.Ready Then
    MessageBox.show("QQClient已经启动,请先关闭","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    Return
End If
QQClient.ServerIP = e.Form.Controls("txtIP").Value  '指定服务器IP地址
QQClient.ServerPort = e.Form.Controls("txtPort").Value  '指定服务器端口
QQClient.UserName = e.Form.Controls("cmbDepartment").Value & "." & e.Form.Controls("txtUserName").Value '指定登录用户名
QQClient.Password = e.Form.Controls("txtPassword").Value
If QQClient.Start() = True '如果登录成功
    e.Form.Controls("btnChat").Enabled = True
    Dim msg As String =  "恭喜,OpenQQ登录成功!"
    If QQClient.ServerMessage > "" Then '如果服务器返回了欢迎信息
        msg = msg & QQClient.ServerMessage
    End If
    popMessage(msg,"提示",PopiconEnum.Infomation,5)
Else '如果登录失败,显示服务器返回错误信息
    e.Form.Controls("btnChat").Enabled = False
    PopMessage("QQClient登录失败,原因:" & vbcrlf & QQClient.ServerMessage,"提示",PopiconEnum.Error,5)
End If

登录界面打开聊天窗口按键的代码是:
If  QQClient.Ready Then
    QQClient.OpenChatWindow()
End If

退出 按键代码:

If QQClient.Ready = True Then
    QQClient.Stop()
    e.Form.Controls("btnChat").Enabled = False
End If

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


加好友 发短信
等级:超级版主 帖子:109736 积分:558396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/21 13:41:00 [只看该作者]

服务端UserLogging事件代码发上来看看,应该是添加了重复名称的好友

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


加好友 发短信
等级:童狐 帖子:231 积分:1751 威望:0 精华:0 注册:2020/2/3 11:16:00
回复:(有点蓝)服务端UserLogging事件代码发上来看看...  发帖心情 Post By:2020/3/21 14:45:00 [只看该作者]

Dim pts() As String = e.UserName.Split(".")
Dim dr1 As DataRow
dr1 = DataTables("用户").Find("部门 = '" & pts(0) & "' And 姓名 = '" & pts(1) & "'")
If dr1 Is Nothing  Then '判断此用户不存在
    e.Message  = "用户名错误!" '返回给登录者的提示信息
    Return
End If
If dr1("密码") <> e.Password Then '如果密码错误
    e.Message  = "登录密码错误!" '返回给登录者的提示信息
    Return
End If
e.Success = True '允许用户登录
'添加所有同事为好友
For Each dr2 As DataRow In DataTables("用户").DataRows
    Dim nm As String =  dr2("部门") & "." & dr2("姓名")
    If nm <> e.UserName Then '如果不是登录者本人
        e.Buddies.Add(nm)
    End If
Next

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


加好友 发短信
等级:童狐 帖子:231 积分:1751 威望:0 精华:0 注册:2020/2/3 11:16:00
回复:(有点蓝)服务端UserLogging事件代码发上来看看...  发帖心情 Post By:2020/3/21 14:50:00 [只看该作者]

目前服务端我这边没有连接阿里云的数据库,客户端有连接阿里云数据库,服务端有建立一个内部数据源的用户表。
另外是否在服务端和客户端都要建立一个信息表啊,用于存放聊天相关数据啊

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


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

服务端华为客户端都连接大同一个数据库,使用同一个用户表。保证用户表不会有任何的空行,或者空的用户,或者重复的部门+用户名
[此贴子已经被作者于2020/3/21 15:11:19编辑过]

 回到顶部