我在Visual Studio 2005中有一个带有EMDK 2.6的项目,在Windows CE上实现了XP SP3上的MC1000数据收集器。 我在项目中有这个功能,给我一个我无法解决的错误:
'Handle data from the reader
Private Sub HandleData(ByVal TheReaderData As Symbol.Barcode.ReaderData)
'MsgBox("Hello I'm reading ....")
If Me.DataTextBox.Text = "" Then
Me.DataTextBox.Text = TheReaderData.Text
' Here begins the verification of the length
If Len(Me.DataTextBox.Text) = Me.TextBox6.Text Then
' The length is ok
objStreamWriter.WriteLine(Me.DataTextBox.Text)
'Update the last read
Me.Label5.Text = Me.DataTextBox.Text
'Clean the field of the current read
Me.DataTextBox.Text = ""
'The counter of the code bars reads increases +1
Me.TextBox3.Text = Me.TextBox3.Text + 1
Else
Me.DataTextBox.Text = ""
MessageBox.Show("The length of the string read is not as expected", "Error !")
End If
End If
End Sub
当我读取长度与Me.TextBox6.Text(例如24)不同的条形码时,问题就开始了,消息框显示正常,但是中间显示另一个消息框,出现下一个错误: “StartRead无效请求已读取” 程序继续正常,我需要消除这个错误,因为看起来非常糟糕。 有帮助吗? 提前谢谢。
答案 0 :(得分:0)
MessageBox不会阻止您的应用程序处理其他事件,并且当您仍处于处理前一个条形码的功能时,可能会读取新的条形码(或者再次通知相同的条形码)。 您是否尝试删除对MessageBox的调用并检查是否仍然发生这种情况? 在调用MessageBox之前,您可能需要禁用阅读器。