服务端的UserLogging事件如下
Dim pts() As String = e.UserName.Split(".")
Dim dr1 As DataRow
dr1 = DataTables("openqq用户列表").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("openqq用户列表").DataRows
Dim nm As String = dr2("所属公司") & "." & dr2("用户名")
If nm <> e.UserName Then '如果不是登录者本人
e.Buddies.Add(nm)
End If
Next
服务端启动代码如下:
QQServer.ServerIp = "127.0.0.1" '指定IP地址
QQServer.ServerPort = 52177 '指定登录端口
QQServer.HeartbeatInterval = 30 '指定心跳时间
QQServer.HeartbeatTimeout = 100 '指定心跳超时时间
QQServer.Start() '启动QQServer
启动客户端代码如下:
小黄 - Foxtable软件 2020/1/22 星期三 14:11:46
启动客户端写了什么代码?服务端的UserLogging事件又写了什么代码?
侧面还行 2020/1/22 星期三 14:12:26
QQClient.ServerIP = "127.0.0.1" '指定服务器IP地址
QQClient.ServerPort = 52177 '指定服务器登录端口
QQClient.UserName = "易装销售.杨龙"
QQClient.Password = "888"
If QQClient.Start() = True '如果登录成功
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
服务端成功启动后,客户端登陆不成功,出现如下提示:
.NET Framework 版本:4.0.30319.1026
Foxtable 版本:2019.12.17.18
错误所在事件:启动IMClient
详细错误信息:
An item with the same key has already been added.
请问是何原因