private void StateCheck(string sCompanyID, string sEquipmentID, string sIP, int iPort) { try { objSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); objSocket.Connect(gsIP, giPort); if (objSocket.Connected) { for (int i = 0; i < giDBCallTimes; i++) { bool blFlag = wsEEP_Client_WS.Update_EquipmentsState(sCompanyID, sEquipmentID , sIP, iPort, DateTime.Now); if (blFlag) { break; } } } } catch (Exception ex) { gLogger.ErrorException("Equipment.ModbusTCP.StateCheck", ex); objMS_SQL.Write("Equipment.ModbusTCP.StateCheck", ex.Message, DateTime.Now); throw ex; } finally { if (objSocket.Connected) { objSocket.Close(1); } } }