diff --git a/TrasferimentoProgrammiOkuma.App/Form1.vb b/TrasferimentoProgrammiOkuma.App/Form1.vb
index 12e3b1f..9fa0328 100644
--- a/TrasferimentoProgrammiOkuma.App/Form1.vb
+++ b/TrasferimentoProgrammiOkuma.App/Form1.vb
@@ -681,7 +681,7 @@ Public Class Form1
Dim fileBytes = Await File.ReadAllBytesAsync(txtFileInvio.Text, token)
fileBytes = RemoveUtf8BomIfPresent(fileBytes)
LogFirstBytes(fileBytes)
- ValidateCncTextBytes(fileBytes)
+ LogNonStandardCncBytes(fileBytes)
Dim blockPaced = chkInvioBlocchi.Checked
Dim terminator = If(blockPaced, Encoding.ASCII.GetBytes("%" & vbCrLf), GetTerminatorBytes())
@@ -1036,15 +1036,27 @@ Public Class Form1
End If
End Sub
- Private Shared Sub ValidateCncTextBytes(data As Byte())
+ Private Sub LogNonStandardCncBytes(data As Byte())
+ Dim firstInvalidPosition As Integer = -1
+ Dim firstInvalidValue As Byte = 0
+ Dim invalidCount As Integer
+
For i = 0 To data.Length - 1
Dim value = data(i)
Dim isAllowedControl = value = &H9 OrElse value = &HA OrElse value = &HD
Dim isPrintableAscii = value >= &H20 AndAlso value <= &H7E
If Not isAllowedControl AndAlso Not isPrintableAscii Then
- Throw New InvalidDataException($"Il file non sembra testo CNC ASCII/7 bit: byte non valido 0x{value:X2} alla posizione {i}.")
+ invalidCount += 1
+ If firstInvalidPosition < 0 Then
+ firstInvalidPosition = i
+ firstInvalidValue = value
+ End If
End If
Next
+
+ If invalidCount > 0 Then
+ Log($"Avviso: trovati {invalidCount} byte di controllo/non ASCII. Primo valore 0x{firstInvalidValue:X2} alla posizione {firstInvalidPosition}. Invio comunque.")
+ End If
End Sub
Private Sub SetBusy(isBusy As Boolean)
diff --git a/clickonce/LMEMoxaTransfer.application b/clickonce/LMEMoxaTransfer.application
index 3d4e67f..decc81e 100644
--- a/clickonce/LMEMoxaTransfer.application
+++ b/clickonce/LMEMoxaTransfer.application
@@ -21,7 +21,7 @@
- xn+ltMyVKq9ey0rNQnMvedxwL0v712BJKOqQDfhnUic=
+ k2O3hUFhGfgwuhFEiQcuDbJSG2zccoTiVaGjWOKs7Kw=
diff --git a/clickonce/LMEMoxaTransfer.dll b/clickonce/LMEMoxaTransfer.dll
index 2553464..55a0cbc 100644
Binary files a/clickonce/LMEMoxaTransfer.dll and b/clickonce/LMEMoxaTransfer.dll differ
diff --git a/clickonce/LMEMoxaTransfer.dll.manifest b/clickonce/LMEMoxaTransfer.dll.manifest
index 2877963..b76511b 100644
--- a/clickonce/LMEMoxaTransfer.dll.manifest
+++ b/clickonce/LMEMoxaTransfer.dll.manifest
@@ -78,7 +78,7 @@
- 6ak63q3A1wBNB1K3aAaWgj8FXDjDZK9h43dSltYtzFc=
+ zDkoqd374fXylpFzzdrcE6tDrsldi7H3qk8lsY5mi8s=
@@ -87,7 +87,7 @@
- MTWvipKrLx4Z9k9iHJsQdbI7dgO69mvCMHhKtsxpGgA=
+ NcYT1Cqbl1/pjWEqR0fuPHedbzqCZF3gF/41VgVCoZg=
\ No newline at end of file
diff --git a/clickonce/LMEMoxaTransfer.exe b/clickonce/LMEMoxaTransfer.exe
index 2c24532..50f2bd6 100644
Binary files a/clickonce/LMEMoxaTransfer.exe and b/clickonce/LMEMoxaTransfer.exe differ
diff --git a/clickonce/LMEMoxaTransfer.pdb b/clickonce/LMEMoxaTransfer.pdb
index 8103a05..419490b 100644
Binary files a/clickonce/LMEMoxaTransfer.pdb and b/clickonce/LMEMoxaTransfer.pdb differ