diff --git a/SCADA/Program/.vs/DataExchange/v15/Server/sqlite3/storage.ide-shm b/SCADA/Program/.vs/DataExchange/v15/Server/sqlite3/storage.ide-shm index afd6d05..8d4930e 100644 Binary files a/SCADA/Program/.vs/DataExchange/v15/Server/sqlite3/storage.ide-shm and b/SCADA/Program/.vs/DataExchange/v15/Server/sqlite3/storage.ide-shm differ diff --git a/SCADA/Program/.vs/DataExchange/v15/Server/sqlite3/storage.ide-wal b/SCADA/Program/.vs/DataExchange/v15/Server/sqlite3/storage.ide-wal index 22d5869..0f3e506 100644 Binary files a/SCADA/Program/.vs/DataExchange/v15/Server/sqlite3/storage.ide-wal and b/SCADA/Program/.vs/DataExchange/v15/Server/sqlite3/storage.ide-wal differ diff --git a/SCADA/Program/ModbusDriver/ModbusTCPDriver.cs b/SCADA/Program/ModbusDriver/ModbusTCPDriver.cs index e5661aa..f360ca5 100644 --- a/SCADA/Program/ModbusDriver/ModbusTCPDriver.cs +++ b/SCADA/Program/ModbusDriver/ModbusTCPDriver.cs @@ -267,11 +267,6 @@ namespace ModbusDriver if (function > Modbus.excExceptionOffset) { function -= Modbus.excExceptionOffset; - //如果是connection lost 主动断开tcp连接准备重连 - if (tcpSynClBuffer[8] == Modbus.excExceptionConnectionLost) - { - tcpSynCl.Close(); - } CallException(id, function, tcpSynClBuffer[8]); return null; } @@ -375,6 +370,11 @@ namespace ModbusDriver internal void CallException(int id, byte function, byte exception) { if (tcpSynCl == null) return; + //主动断开连接准备重连 + if (exception == Modbus.excExceptionConnectionLost) + { + tcpSynCl.Close(); + } if (OnError != null) OnError(this, new IOErrorEventArgs(Modbus.GetErrorString(exception))); }