/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void item_ConnectedEvent(object sender, EventArgs e) { SocketListener sl = sender as SocketListener; Socket newsocket = sl.NewSocket; if (newsocket == null) { return; } if (!newsocket.Connected) { return; } SocketCommuniPort scp = null; try { scp = new SocketCommuniPort(newsocket); } catch { CloseSocket(newsocket); return; } scp.ReceivedEvent += new EventHandler(scp_ReceivedEvent); bool b = StationCommuniPortBinder.Bind( this._communiSoft.HardwareManager.Stations, scp); if (!b) { this._communiSoft.CommuniPortManager.Add(scp); } }
/// <summary> /// /// </summary> private void CloseHelper() { if (!this._closed) { _socket.Shutdown(SocketShutdown.Both); _socket.Close(); this._closed = true; StationCommuniPortBinder.ClearBind(this); OnClosed(); } }