Option Explicit Public Sub SendServ(strData As String) On Error GoTo ERRH_ With ds1 .SendData strData & vbCrLf End With Exit Sub ERRH_: If Err.Number = 40006 Then Resume Next Else MsgBox "Description: " & Err.Description & vbCrLf & "Number: " & Err.Number, vbCritical, App.Title End If End Sub Public Sub Connect() On Error Resume Next Dim localport As Long ds1.Close localport = 0 ds1.RemotePort = ircstport ds1.localport = localport identd.localport = 113 On Error GoTo closeidentd identd.Listen closeidentd: ds1.Connect ircstserv, ircstport ResetFontFormat End Sub Public Sub Disconnect() On Error Resume Next ds1.Close identd.Close End Sub Private Sub ds1_Connect() On Error Resume Next Dim pGend As String If ircstgend = "M" Then pGend = "M" If ircstgend = "F" Then pGend = "F" If ircstugen = "" Then pGend = "U" SendServ ("NICK " & ircstuser) SendServ ("USER " & ircstgate) & " " & ds1.LocalHostName & " " & ircstgate & " :" & pGend & "_" & App.Title End Sub Private Sub ds1_DataArrival(ByVal bytesTotal As Long) On Error Resume Next Dim asData() As String Dim i As Integer ds1.GetData sData, vbString asData = Split(sData, vbCrLf) ReDim Preserve asData(UBound(asData)) As String For i = 0 To UBound(asData) sData = asData(i) If sData <> "" Then Parse End If Next i Erase asData End Sub Private Sub UserControl_Initialize() End Sub