【正文】
n recUser = If 所有人 Then recUser = amp。 recUser amp。 If = 0 Or = 所有人 Then amp。 userName amp。 amp。 對 amp。 recUser amp。 說: amp。 DoEvents Else amp。 038868SendToOne amp。 amp。 userName amp。 amp。 悄悄對 amp。 recUser amp。 說: amp。 DoEvents End If = Else = MsgBox 很抱歉,你被管理員禁言! End If End SubPrivate Sub cmdCls_Click() = = 4680 = 50 = 19 = 19 Hig = 19 con = 0End SubPrivate Sub cmdExit_Click() Unload MeEnd SubPrivate Sub Command1_Click() End Sub Private Sub Form_Load() = userName Hig = 19 39。 RemoteComputerName為服務(wù)器端的計算機名或IP地址。 Msgnum = 0 connecting_Time = 0 39。連接用去的秒數(shù) connect_OutTime = 3 39。 連接超時時限為3秒 = ServerIP = 1000 Call ConnectServer 所有人 = 0 End SubPrivate Sub Form_Unload(Cancel As Integer) End SubPrivate Sub HScroll1_Change() = 50 * 10End Sub Private Sub sckClient_Close() MsgBox 服務(wù)器通道已關(guān)閉!, 0 + 16 + 0, 聊天室客戶端 End End Sub Private Sub sckClient_Connect() userName If InStr(1, userName, *) = 1 Then userName = Right(userName, Len(userName) 1) End If End Sub Private Sub sckClient_DataArrival(ByVal bytesTotal As Long) Dim s As String Msgnum = Msgnum + 1 s 39。MsgBox s If InStr(1, s, SystemOrder:) = 1 Then If s = SystemOrder:服務(wù)器忙,請稍后再連接! Then MsgBox 聊天室人滿為患,請稍后再進! = True Unload Me Exit Sub End If If s = SystemOrder:IP重復(fù),客戶端退出重進! Then MsgBox 您不能使用同一個IP地址重復(fù)登錄! = True Unload Me Exit Sub End If If s = SystemOrder:姓名重復(fù),客戶端退出重進! Then MsgBox 很抱歉,這個姓名有人正在使用,請換一個再試! = True Unload Me Exit Sub End If If s = SystemOrder:踢出 Then MsgBox 很抱歉,你被管理員踢出! Unload Me Exit Sub End If If s = SystemOrder:禁言 Then n = 1 MsgBox 很抱歉,你被管理員禁言! 39。Unload Me Exit Sub End If If InStr(1, s, SystemOrder:addtolist) = 1 Then s = Right(s, Len(s) 21) 39。MsgBox s Call GetUsersName(s) If = 7 Then = False Unload frmLogin Exit Sub End If If InStr(1, s, SystemOrder:removefromlist) = 1 Then Call RemoveFromlist(s) Exit Sub End If End If Call AddToText1(s) End Sub Private Sub sckClient_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean) Unload Me MsgBox 連接服務(wù)器失?。? 0 + 16 + 0, 聊天室客戶端 = True End SubPrivate Sub AddToList(ss As String) ss ss = amp。 amp。 人在線End SubPrivate Sub RemoveFromlist(ss As String) Dim olduser As String olduser = Right(ss, Len(ss) 26) For i = 0 To 1 If (i) = olduser Then Exit For Next i i + 1 = 0 = amp。 amp。 人在線End SubPrivate Sub GetUsersName(s As String)Dim user As StringDim i As Integeri = 0s = Trim(s)If s = Then Exit Subuser = dividemsgleft(s, 038868)Call AddToList(user)s = Trim(dividemsgright(s, 038868))GetUsersName (s)End SubPrivate Function dividemsgleft(s1 As String, s2 As String) dividemsgleft = Left(s1, InStr(1, s1, s2) 1)End FunctionPrivate Function dividemsgright(s1 As String, s2 As String) dividemsgright = Right(s1, Len(s1) InStr(1, s1, s2) 5)End FunctionPrivate Sub AddToText1(s As String)con = con + 1If con 19 Then = + 4560 / 19 = + 1 = 4560 / 19End If = amp。 s amp。 Chr(13) amp。 Chr(10)End SubPrivate Sub Timer1_Timer()If connecting_Time connect_OutTime Then connecting_Time = connecting_Time + 1 Exit Sub End If If = 7 Then = False Exit Sub Else Unload Me MsgBox 連接服務(wù)器失??!, 0 + 16 + 0, 聊天室客戶端 = True End IfEnd SubPrivate Sub VScroll1_Change()ChangHeight = Hig = + ChangHeight * (4560 / 19)Hig = End Sub:模塊Public userName As StringPublic Msgnum As IntegerPublic ServerIP As StringPublic connecting_Time As IntegerPublic connect_OutTime As IntegerPublic Function ReadServerIP(filename As String) As String Dim ss As String cs = ss = Open filename For Input As 1 Line Input 1, ss Close 1 ReadServerIP = Mid(ss, 2, Len(ss) 2)End Function