Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
一、服务端:
1、ReceivedMessage事件:
If e.Message = "+user+" Then '如果收到"+user+"信息时,重新加载用户表
DataTables("Users").Load()
End If
Dim msg As String = e.Message
If msg.StartsWith(":g") AndAlso msg.EndsWith("g:") Then
msg = msg.SubString(2, msg.Length - 4)
If flbhs.ContainsKey(msg) Then '如果存在这个月的编号.flbhs为全局变量
flbhs(msg) = flbhs(msg) + 1 '将该月最大编号加1
Else
flbhs.Add(msg,1) '如果这个月的首次编号,则编号等于1
End If
End if
2、UserLogging事件:
If e.User IsNot Nothing Then
e.Success=True
For Each u As UserInfo In users
If u.Name<>e.User.Name Then
If u.Group>"" Then
e.Buddies.Add(u.Group & "." & u.Name)
End If
End If
Next
Eles If
e.ReturnValue = flbhs(msg)
End If
二、客户端:
1、ReceivedMessage事件:
Dim msg As String = e.Message
'MessageBox.Show("我是客户端接收到的信息:" & msg)
If msg.StartsWith("U#") Then '表示修改了某行
Dim pts() As String = msg.Split("#")
If pts.Length = 3 Then
Dim dr As DataRow = DataTables(pts(1)).Find("[_Identify] = " & pts(2))
If dr IsNot Nothing Then
dr.Load() '重新加载此行
End If
End If
ElseIf msg.StartsWith("A#") Then '表示增加了行
Dim pts() As String = msg.Split("#")
If pts.Length = 3 Then
DataTables(pts(1)).AppendLoad("[_Identify] = " & pts(2))
End If
ElseIf msg.StartsWith("D#") Then '表示删除了行
Dim pts() As String = msg.Split("#")
If pts.Length = 3 Then
DataTables(pts(1)).RemoveFor("[_Identify] = " & pts(2))
End If
ElseIf msg.StartsWith("M#") Then 'M表示移除行
Dim pts() As String = msg.Split("#")
If pts.Length = 3 Then
DataTables(pts(1)).RemoveFor("[_Identify] = " & pts(2)) '移除行
End If
End If
If msg.StartsWith("+@") Then '如: +@|主键|处方号|医生姓名
Dim pts() As String =msg.Split("|")
dsfs.add(pts(1) & "|" & pts(2) & "|" & pts(3)) 'dsfs为全局变量待收费处方
Forms("信息提示窗口").Open
End If