我正在为 Intermec CK3 和 CK30 使用 .NET CF 2.0 开发应用程序。
我正在为两个版本的应用程序使用最新且相同版本的 IntermecDataCollection,并使用相同的代码来读取条形码。
该应用程序在 CK3(最新型号)上完美运行,但是当我尝试使用 CK30 读取某些内容时,结果是与预期不同的代码。
通常一些字符出现在正确的代码前面,但在某些情况下,结果与原来的完全不同。
已经成功使用谷歌搜索。
谁能帮我?
在 CK3 而不是 CK30 上工作的代码示例:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.IO;
using System.Windows.Forms;
using WOPT_Coletor.ConectorWOPT;
using Intermec.DataCollection;
namespace WOPT_Coletor.view.CriarOT
{
public partial class frmCriarOT_5 : Form
{
public BarcodeReader leitor;
public frmCriarOT_5(int areaSelecionada, int tipoOT, long nlenr, int qtdEtq)
{
InitializeComponent();
//Instanciete the barcode reader class.
model.LeitorCodigoDeBarras classeLeitor = new model.LeitorCodigoDeBarras();
leitor = classeLeitor.LerCodigoDeBarras();
leitor.BarcodeRead += new BarcodeReadEventHandler(this.eventoLeitorCodigoDeBarras);
}
void eventoLeitorCodigoDeBarras(object sender, BarcodeReadEventArgs e)
{
tbMaterial.Text = e.strDataBuffer.Trim().ToUpper();
}
}
}
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using Intermec.DataCollection;
namespace WOPT_Coletor.model
{
class LeitorCodigoDeBarras
{
public BarcodeReader LerCodigoDeBarras()
{
try
{
BarcodeReader meuLeitor = new BarcodeReader("default", 4096);
meuLeitor.ScannerEnable = true;
meuLeitor.ThreadedRead(true);
return meuLeitor;
}
catch (BarcodeReaderException bx)
{
MessageBox.Show("Não foi possível inicializar o leitor de código de barras. Contate seu supervisor. \n" + bx.Message, "Erro", MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button1);
return null;
}
}
}
}