以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- openqq登录 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=91353) |
-- 作者:lk15502 -- 发布时间:2016/10/9 7:50:00 -- openqq登录 自定义用户登录,openqq第一个用户登录正常,第二个用户登录出现如下错误:登录失败 .NET Framework 版本:2.0.50727.5485 Foxtable 版本:2016.7.29.1 错误所在事件:启动IMClient 详细错误信息: 已添加了具有相同键的项。 请问老师是什么原因? |
-- 作者:狐狸爸爸 -- 发布时间:2016/10/9 9:20:00 -- 存在同名用户。 |
-- 作者:lk15502 -- 发布时间:2016/10/9 10:39:00 -- 可以确定没有同名用户,就10个左右用户 |
-- 作者:有点蓝 -- 发布时间:2016/10/9 10:48:00 -- 贴出完整代码,或者上传例子测试 |
-- 作者:lk15502 -- 发布时间:2016/10/9 11:08:00 -- 已经好了,把下面一段代码屏蔽了, Dim pts() As String = e.UserName.Split(".") Dim dr As DataRow dr = DataTables("用户表").Find("group = \'" & pts(0) & "\' And name = \'" & pts(1) & "\'") If dr Is Nothing Then \'判断此用户不存在 e.Message = "用户名错误!" \'返回给登录者的提示信息 Return End If If dr("password") <> e.Password Then \'如果密码错误 e.Message = "登录密码错误!" \'返回给登录者的提示信息 Return End If e.Success = True \'允许用户登录 \'添加存储在好友列的非本部门的好友 If dr.IsNull("好友") = False Then Dim nms() As String = dr("好友").Split(",") e.Buddies.AddRange(nms) End If \'最后添加相同部门的同事为好友 \'For Each dr In DataTables("用户表").Select("group = \'" & pts(0) & "\'") \'Dim nm As String = dr("group") & "." & dr("name") \'If nm <> e.UserName Then \'如果不是登录者本人 \'e.Buddies.Add(nm) \'End If \'Next |