Categorias
c??digo de barras

Ler c??digo de barras atrav??s de um leitor ??ptico com ASP.NET

N??o h?? nenhum segredo ou driver espec??fico para realizar a leitura. Basicamente o leitor ??ptico l?? o c??digo de barras, converte para string e retorna para o buffer de entrada do computador. Ou seja, ?? como se fosse digitar no teclado! Acabou o mist??rio…
H?? v??rias formas de codifica????o do c??digo de barras e quem ?? respons??vel por essa codifica????o/decofica????o pode ser tanto a leitora quanto a aplica????o. Irei considerar em nosso exemplo que o que a leitora l?? e irei utilizar n??o me importando o que seja. Supondo e para fins ilustrativos que nosso c??digo de barras seja essa a?? de cima, o valor de entrada seria 3805565154 (frisando novamente, apenas supondo). A leitora ir?? passar para nossa aplica????o a seguinte entrada 3805565154 ENTER. A maioria das leitoras j?? facilitam sua vida for??ando o ENTER ao terminar de ler o conte??do. Ent??o fica f??cil! Vamos por a m??o na massa.
Crie uma tela com apenas um TextBox. Criei essa bonitinha aqui:

Selecione o TextBox, v?? na guia Properties e clique no ??cone de Events. Adicione um evento em KeyDown conforme a figura abaixo:

Com isso, ao digitar qualquer valor no TextBox, ir?? disparar esse evento. Mas como queremos ler apenas o valor completo, adicionamos uma determinada condi????o para come??ar a analisar apenas quando pressionar/entrar o ENTER, logo nosso c??digo ficaria da seguinte forma:
private void txtNumero_KeyDown(object sender, KeyEventArgs e)

{
        if (e.KeyCode == Keys.Enter)
        {
                string entrada = txtNumero.Text;
                txtNumero.Text = “”;
        }
}
 

Ou seja, a cada entrada de caracteres, ativo o evento mas s?? iniciarei a an??lise quando a entrada for um ENTER. Ao final, zero o conte??do do TextBox para que possa dar uma nova entrada. Da?? voc?? pode adicionar outras instru????es no meio para fazer o que quiser. Eu complementei a aplica????o fazendo uma consulta em um banco de dados e analisando se existe ou n??o um determinado cupom. Vamos aos testes…
A leitora que usei ?? plugada diretamente na entrada PS/2 do teclado. A depender de sua leitora pode ser na USB, na PS/2 ou utilizar algum adaptador espec??fico. Depois de conectado, inicie sua aplica????o. Posicione o leitor sobre o c??digo de barras e pressione o bot??o para realizar a leitura e voil??… Sua aplica????o ir?? ler a entrada e realizar o processo que desejar.
Minha aplica????o leu um cupom cujo n??mero codificado era 1000909. Bem f??cil e ??til… 
Quem quiser saber mais informa????es como tipos de codifica????es, como gerar/codificar/decodificar strings para c??digo de barras no Access, acessem esse artigo da MSDN que ?? bem interessante e explicativo.