UserLogging:
Dim pts() As String = e.UserName.Split(".")
Dim dr1 As DataRow
dr1 = DataTables("Users").Find("上级 = '" & pts(0) & "' And Name = '" & pts(1) & "'")
If dr1 Is Nothing Then '判断此用户不存在
e.Message = "用户名错误!" '返回给登录者的提示信息
Return
End If
If dr1("Password") <> e.Password Then '如果密码错误
e.Message = "登录密码错误!" '返回给登录者的提示信息
Return
End If
e.Success = True '允许用户登录
'最后添加相同部门的同事为好友
For Each dr2 As DataRow In DataTables("Users").DataRows
Dim nm As String = dr2("上级") & "." & dr2("Name")
If nm <> e.UserName Then '如果不是登录者本人
e.Buddies.Add(nm)
End If
Next
ReceivedMessage:
If e.Message = "GetDate" Then
e.ReturnValue = Date.Now
End If
UserChangePassword
Dim pts() As String = e.UserName.Split(".")
Dim dr As DataRow = DataTables("Users").Find("上级 = '" & pts(0) & "' And Name = '" & pts(1) & "'")
If dr Is Nothing OrElse dr("Password") <> e.OldPassword Then
e.ReturnMessage = "原密码不符!"
Else
dr("Password") = e.NewPassword
dr.Save()
e.ReturnMessage = "OK" '返回约定的字符,通知客户端,密码修改成功
End If
启动
Click
QQServer.ServerIp = e.Form.Controls("IP").value '指定IP地址
QQServer.ServerPort = e.Form.Controls("端口").value '指定端口
QQServer.HeartbeatInterval = e.Form.Controls("心跳超时").value '指定心跳时间
QQServer.HeartbeatTimeout = e.Form.Controls("心跳间隔").value '指定心跳超时时间
QQServer.Start()
其实跟帮助的代码是一致的
客户端我是测试的时候发现会资源间歇性断线——因为打开的内置聊天窗口会关闭,然后又可以重新打开。
我才导入《在菜单提示新消息》的相关代码 以便比较直观的观察。