void OnAcceptClient(AdHocDesktop_TcpClient acceptClient) { if (AcceptClient != null) { AcceptClient(acceptClient); } }
void acceptClient_Error(object sender, string message) { AdHocDesktop_TcpClient acceptClient = (AdHocDesktop_TcpClient)sender; acceptClient.Error -= new AdHocDesktop_TcpErrorEventHandler(acceptClient_Error); OnDisconnectClient(acceptClient); acceptClient.Stop(); }
void OnDisconnectClient(AdHocDesktop_TcpClient disconnectClient) { if (clientTable.ContainsValue(disconnectClient)) { clientTable.Remove(disconnectClient.Identifier); } if (DisconnectClient != null) { DisconnectClient(disconnectClient); } }
public string GetIdentifier(AdHocDesktop_TcpClient client) { lock (clientTable) { foreach (KeyValuePair <string, AdHocDesktop_TcpClient> keyValue in clientTable) { if (keyValue.Value.Equals(client)) { return(keyValue.Key); } } } return(null); }
void OnDisconnectClient(AdHocDesktop_TcpClient disconnectClient) { int index = clientTable.IndexOfValue(disconnectClient); if (index > -1) { clientTable.RemoveAt(index); } if (DisconnectClient != null) { DisconnectClient(disconnectClient); } }
void ServerThreadHandler() { while (isRunning) { try { Socket connectedClient = server.AcceptSocket(); AdHocDesktop_TcpClient acceptClient = new AdHocDesktop_TcpClient(connectedClient); //IPEndPoint connectedClientInfo = ((IPEndPoint)connectedClient.RemoteEndPoint); //clientTable[connectedClientInfo.ToString()] = acceptClient; clientTable[Guid.NewGuid().ToString()] = acceptClient; cceptClient.Error += new AdHocDesktop_TcpErrorEventHandler(acceptClient_Error); acceptClient.Start(); OnAcceptClient(acceptClient); } catch (Exception) { } } }