diff --git a/IOB-WIN-NEXT/IOB-WIN-NEXT.csproj b/IOB-WIN-NEXT/IOB-WIN-NEXT.csproj
index 48db5aa6..513a68b3 100644
--- a/IOB-WIN-NEXT/IOB-WIN-NEXT.csproj
+++ b/IOB-WIN-NEXT/IOB-WIN-NEXT.csproj
@@ -133,7 +133,9 @@
..\packages\System.Formats.Asn1.5.0.0\lib\net461\System.Formats.Asn1.dll
-
+
+ ..\packages\System.IO.Compression.4.3.0\lib\net46\System.IO.Compression.dll
+
..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll
diff --git a/IOB-WIN-NEXT/IobGeneric.cs b/IOB-WIN-NEXT/IobGeneric.cs
index a1cebc3d..5fe47712 100644
--- a/IOB-WIN-NEXT/IobGeneric.cs
+++ b/IOB-WIN-NEXT/IobGeneric.cs
@@ -111,7 +111,7 @@ namespace IOB_WIN_NEXT
protected AdapterForm parentForm;
///
- /// TImeout x ping al server
+ /// Timeout x ping al server
///
protected int pingServerMsTimeout = utils.CRI("pingMsTimeout");
@@ -521,6 +521,7 @@ namespace IOB_WIN_NEXT
{
get
{
+ lgInfo($"Test Server Ping");
IPStatus answ = IPStatus.Unknown;
// se disabilitato salto...
if (pingDisabled)
@@ -531,6 +532,8 @@ namespace IOB_WIN_NEXT
{
IPAddress address;
PingReply reply;
+ var rand = new Random();
+ int pingTOut = 500;
using (Ping pingSender = new Ping())
{
address = IPAddress.Loopback;
@@ -552,24 +555,27 @@ namespace IOB_WIN_NEXT
// se != null --> uso address...
if (address != null)
{
- reply = pingSender.Send(address, 300);
+ pingTOut = rand.Next(100, 200);
+ reply = pingSender.Send(address, pingServerMsTimeout + pingTOut);
}
else
{
- reply = pingSender.Send(cIobConf.cncIpAddr, 300);
+ pingTOut = rand.Next(200, 400);
+ reply = pingSender.Send(cIobConf.cncIpAddr, pingServerMsTimeout + pingTOut);
}
}
- catch
+ catch (Exception exc)
{
- reply = pingSender.Send(IPAddress.Loopback, 300);
+ pingTOut = rand.Next(50, 100);
+ reply = pingSender.Send(IPAddress.Loopback, pingServerMsTimeout + pingTOut);
+ lgError($"ping to loopback addres per eccezione:{Environment.NewLine}{exc}");
}
// se ho timeout riprovo...
while (reply.Status != IPStatus.Success && numRetry < maxRetry)
{
lgInfo($"Server Ping KO | reply: {reply.Status} --> retry");
- var rand = new Random();
- Thread.Sleep(rand.Next(150, 500));
- reply = pingSender.Send(address, pingServerMsTimeout * numRetry / 2);
+ Thread.Sleep(rand.Next(300, 600));
+ reply = pingSender.Send(address, pingServerMsTimeout * numRetry / 2 + pingTOut);
numRetry++;
if (reply.Status == IPStatus.Success)
{
@@ -4522,7 +4528,7 @@ namespace IOB_WIN_NEXT
///
///
///
- public void saveValue(ref Dictionary outVal, double valore, string chiave)
+ public virtual void saveValue(ref Dictionary outVal, double valore, string chiave)
{
//check obj preliminare
if (outVal == null)
diff --git a/IOB-WIN-NEXT/IobKawasaki.cs b/IOB-WIN-NEXT/IobKawasaki.cs
index 723c2e5a..e143c247 100644
--- a/IOB-WIN-NEXT/IobKawasaki.cs
+++ b/IOB-WIN-NEXT/IobKawasaki.cs
@@ -6,7 +6,7 @@ using System.Net.NetworkInformation;
namespace IOB_WIN_NEXT
{
- public class IobKawasaki : IobGeneric
+ public class IobKawasaki : IobGeneric, IDisposable
{
#region Private Fields
@@ -696,6 +696,14 @@ namespace IOB_WIN_NEXT
#region Public Methods
+ ///
+ /// Metodo dispose x il currPLC contenuto
+ ///
+ public void Dispose()
+ {
+ KAWASAKI_ref.Dispose();
+ }
+
///
/// Processo i task richiesti e li elimino dalla coda 1:1
///
diff --git a/IOB-WIN-NEXT/IobModbusTCP.cs b/IOB-WIN-NEXT/IobModbusTCP.cs
index 0b4e065a..0db0ad0e 100644
--- a/IOB-WIN-NEXT/IobModbusTCP.cs
+++ b/IOB-WIN-NEXT/IobModbusTCP.cs
@@ -1166,7 +1166,7 @@ namespace IOB_WIN_NEXT
///
///
///
- public void saveValue(ref Dictionary outVal, double valore, string chiave)
+ public override void saveValue(ref Dictionary outVal, double valore, string chiave)
{
//check obj preliminare
if (outVal == null)
diff --git a/IOB-WIN-NEXT/IobModbusTCPHam.cs b/IOB-WIN-NEXT/IobModbusTCPHam.cs
index 532bf3d0..1bdc69c2 100644
--- a/IOB-WIN-NEXT/IobModbusTCPHam.cs
+++ b/IOB-WIN-NEXT/IobModbusTCPHam.cs
@@ -43,7 +43,9 @@ namespace IOB_WIN_NEXT
processDynData();
}
catch (Exception exc)
- { }
+ {
+ lgError($"Eccezione in processDynData iniziale x ModBus TCP HAM:{Environment.NewLine}{exc}");
+ }
}
}
diff --git a/IOB-WIN-NEXT/IobSiemensComeca.cs b/IOB-WIN-NEXT/IobSiemensComeca.cs
index 68316cf6..8dbdfe18 100644
--- a/IOB-WIN-NEXT/IobSiemensComeca.cs
+++ b/IOB-WIN-NEXT/IobSiemensComeca.cs
@@ -111,8 +111,8 @@ namespace IOB_WIN_NEXT
*
----------------------------------------------------- */
- bool fatto = false;
- ushort valW = 0;
+ //bool fatto = false;
+ //ushort valW = 0;
var MemInt = new byte[2];
diff --git a/IOB-WIN-NEXT/IobSiemensCosmap.cs b/IOB-WIN-NEXT/IobSiemensCosmap.cs
index 9bc31354..5724e365 100644
--- a/IOB-WIN-NEXT/IobSiemensCosmap.cs
+++ b/IOB-WIN-NEXT/IobSiemensCosmap.cs
@@ -71,10 +71,10 @@ namespace IOB_WIN_NEXT
*
----------------------------------------------------- */
- bool fatto = false;
+ //bool fatto = false;
ushort currStatus = 0;
ushort allarme = 0;
- ushort valW = 0;
+ //ushort valW = 0;
var MemInt = new byte[2];
diff --git a/IOB-WIN-NEXT/packages.config b/IOB-WIN-NEXT/packages.config
index 5d6bf35d..166cfa69 100644
--- a/IOB-WIN-NEXT/packages.config
+++ b/IOB-WIN-NEXT/packages.config
@@ -22,6 +22,7 @@
+