diff --git a/Sharp7/MsgSocket.cs b/Sharp7/MsgSocket.cs index 9e201ce..2e9240f 100644 --- a/Sharp7/MsgSocket.cs +++ b/Sharp7/MsgSocket.cs @@ -97,12 +97,17 @@ namespace Sharp7 Expired = Environment.TickCount - Elapsed > Timeout; // If timeout we clean the buffer if (Expired && (SizeAvail > 0)) - try { - byte[] Flush = new byte[SizeAvail]; - TCPSocket.Receive(Flush, 0, SizeAvail, SocketFlags.None); + try + { + byte[] Flush = new byte[SizeAvail]; + TCPSocket.Receive(Flush, 0, SizeAvail, SocketFlags.None); + } + catch + { + LastError = S7Consts.errTCPDataReceive; + } } - catch { } } } catch diff --git a/Sharp7/S7Client.cs b/Sharp7/S7Client.cs index d3d6851..06aea3a 100644 --- a/Sharp7/S7Client.cs +++ b/Sharp7/S7Client.cs @@ -498,21 +498,16 @@ namespace Sharp7 private void CreateSocket() { - try - { - Socket = new MsgSocket(); - Socket.ConnectTimeout = DefaultTimeout; - Socket.ReadTimeout = DefaultTimeout; - Socket.WriteTimeout = DefaultTimeout; - } - catch - { - } + Socket = new MsgSocket(); + Socket.ConnectTimeout = DefaultTimeout; + Socket.ReadTimeout = DefaultTimeout; + Socket.WriteTimeout = DefaultTimeout; } private int TCPConnect() { if (_LastError==0) + { try { _LastError=Socket.Connect(IPAddress, _PLCPort); @@ -521,6 +516,7 @@ namespace Sharp7 { _LastError = S7Consts.errTCPConnectionFailed; } + } return _LastError; } @@ -575,10 +571,13 @@ namespace Sharp7 // Receives the S7 Payload RecvPacket(PDU, 7, Size - IsoHSize); } + if (_LastError == 0) + { return Size; - else - return 0; + } + + return 0; } private int ISOConnect()