OpenQQ服务器端用户表使用的是外部表,用户数在100人以内,想在系统登录时将所有用户定义为好友,使用帮助文件中的代码却发现只添加了部分用户,代码是
Dim pts() As String = e.UserName.Split(".")
im 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
测试时发现用部分用户并没有添加为好友,人员因为是逐步加入的,同一部门的人员在用户表中没有在一起是否是这个原因呢?