diff --git a/IOB-WIN-NEXT/IobGeneric.cs b/IOB-WIN-NEXT/IobGeneric.cs index b8f81414..a6439264 100644 --- a/IOB-WIN-NEXT/IobGeneric.cs +++ b/IOB-WIN-NEXT/IobGeneric.cs @@ -3320,17 +3320,25 @@ namespace IOB_WIN_NEXT case taskType.setProg: case taskType.setPzComm: // recupero dati da memMap... - if (memMap.mMapWrite.ContainsKey(item.Key)) + // recupero dati da memMap... + if (memMap != null && memMap.mMapWrite != null) { - dataConf currMem = memMap.mMapWrite[item.Key]; - string addr = currMem.memAddr; - taskVal = $"SET task: {item.Key} --> {item.Value} | mem: {currMem.memAddr} - {currMem.size} byte"; - // salvo il nuovo valore nella memoria... così prox invio lo trasmetterà - memMap.mMapWrite[item.Key].value = item.Value; + if (memMap.mMapWrite.ContainsKey(item.Key)) + { + dataConf currMem = memMap.mMapWrite[item.Key]; + string addr = currMem.memAddr; + taskVal = $"SET task: {item.Key} --> {item.Value} | mem: {currMem.memAddr} - {currMem.size} byte"; + // salvo il nuovo valore nella memoria... così prox invio lo trasmetterà + memMap.mMapWrite[item.Key].value = item.Value; + } + else + { + taskVal = $"NO DATA MEM, SET task: {item.Key} --> {item.Value}"; + } } else { - taskVal = $"NO DATA MEM, SET task: {item.Key} --> {item.Value}"; + taskVal = $"NO MemMap found, SET task: {item.Key} --> {item.Value}"; } // salvo in currProd.. saveProdData(new KeyValuePair(item.Key, item.Value)); diff --git a/IOB-WIN/IobGeneric.cs b/IOB-WIN/IobGeneric.cs index 2a961ca7..8b1c1a87 100644 --- a/IOB-WIN/IobGeneric.cs +++ b/IOB-WIN/IobGeneric.cs @@ -2964,17 +2964,24 @@ namespace IOB_WIN case taskType.setProg: case taskType.setPzComm: // recupero dati da memMap... - if (memMap.mMapWrite.ContainsKey(item.Key)) + if (memMap != null && memMap.mMapWrite != null) { - dataConf currMem = memMap.mMapWrite[item.Key]; - string addr = currMem.memAddr; - taskVal = $"SET task: {item.Key} --> {item.Value} | mem: {currMem.memAddr} - {currMem.size} byte"; - // salvo il nuovo valore nella memoria... così prox invio lo trasmetterà - memMap.mMapWrite[item.Key].value = item.Value; + if (memMap.mMapWrite.ContainsKey(item.Key)) + { + dataConf currMem = memMap.mMapWrite[item.Key]; + string addr = currMem.memAddr; + taskVal = $"SET task: {item.Key} --> {item.Value} | mem: {currMem.memAddr} - {currMem.size} byte"; + // salvo il nuovo valore nella memoria... così prox invio lo trasmetterà + memMap.mMapWrite[item.Key].value = item.Value; + } + else + { + taskVal = $"NO DATA MEM, SET task: {item.Key} --> {item.Value}"; + } } else { - taskVal = $"NO DATA MEM, SET task: {item.Key} --> {item.Value}"; + taskVal = $"NO MemMap found, SET task: {item.Key} --> {item.Value}"; } break;