以文本方式查看主题

-  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