internal void Eraser() { //Debug.Print("StackPhl.Eraser") if (m_TypeConnect == EnumConnect.USB) { m_SerialPort_Int.Dispose(); m_SerialPort_Int.DataReceived -= new RoutinesLibrary.IO.SerialPort.DataReceivedEventHandler(SerialPort_Int_DataReceived); m_SerialPort_Int = null; } else if (m_TypeConnect == EnumConnect.TCP) { m_WinSockClient_Int.Dispose(); m_WinSockClient_Int.DataReceived -= new RoutinesLibrary.Net.Protocols.TCP.TCP.DataReceivedEventHandler(WinSockClient_Int_DataReceived); m_WinSockClient_Int.ClosedConnectionTCP -= new RoutinesLibrary.Net.Protocols.TCP.TCP.ClosedConnectionTCPEventHandler(WinSockClient_Int_ClosedConnection); m_WinSockClient_Int = null; } }
private void CloseWinSock(ref RoutinesLibrary.Net.Protocols.TCP.TCP _WinSock) { try { if (_WinSock != null) { // marca como no conectado int idx = discoveredStations.ExistsStation(_WinSock.HostEndPoint); if (idx >= 0) { //Debug.Print("SearchTCP - CloseWinSock - marca como no conectada") discoveredStations.set_Connected(idx, false); //discoveredStations.StationWinSock(idx) = Nothing } _WinSock.Dispose(); _WinSock = null; } } catch (Exception) { } }