scanner de code à barres de la programmation en C#

J'ai besoin de développer une simple fréquentation système pour une entreprise. Je suis intéressée pour développer ce logiciel en C# parce que j'ai entendu dire que .NET framework fournit Scanner de code à Barres Bibliothèques qui rend cette tâche plus facile. J'ai reçu de scanner de code à barres de l'AURORE. J'ai configuré ce scanner avec mon système et il lit quand j'carte magnétique devant elle.
Je n'ai aucune idée de comment faire pour capturer les informations de code-barres!! Il s'agit d'une nouvelle tâche pour moi et je ne connais pas les méthodes que j'utilise pour lire les codes-barres.
Je sais que Scaner l'habitude de lire des données sous forme de chaîne, elle conserve dans le presse-papiers et le coller dans
active editbox, ou n'importe quel actif.
Par exemple, si j'ouvre le bloc-notes et d'analyse de la carte, dans le bloc-notes je vois le nombre 00004 (qui je pense est le code à barres)...

J'ai quelques questions:

1. Quel est le meilleur moyen de lire les codes à barres de la valeur qui apparaît sur la zone d'édition (Ma demande aura une zone de texte), j'ai besoin de contrôler le Scanner de l'Événement, de sorte qu'Il ne devrait pas coller de code à barres de la valeur dans la zone de texte par iteself, plutôt que je vais utiliser cette valeur...

2. Quel sera le code qui va déclencher un événement quand quelqu'un balayage de la carte?

Veuillez fournir des exemples de code(C#).Votre aide sera très appréciée.

public partial class Form1 : Form
{
SerialPort _serialPort;
//delegate is used to write to a UI control from a non-UI thread
private delegate void SetTextDeleg(string text);
private void Form1_Load(object sender, EventArgs e)
{
//all of the options for a serial device
//can be sent through the constructor of the SerialPort class
//PortName = "COM1", Baud Rate = 19200, Parity = None, 
//Data Bits = 8, Stop Bits = One, Handshake = None
_serialPort = new SerialPort("COM1", 19200, Parity.None, 8, StopBits.One);
_serialPort.Handshake = Handshake.None;
_serialPort.DataReceived += new SerialDataReceivedEventHandler(sp_DataReceived);
_serialPort.ReadTimeout = 500;
_serialPort.WriteTimeout = 500;
_serialPort.Open();
}
private void btnStart_Click(object sender, EventArgs e)
{
//Makes sure serial port is open before trying to write
try
{
if (!_serialPort.IsOpen)
_serialPort.Open();
_serialPort.Write("SI\r\n");
}
catch (Exception ex)
{
MessageBox.Show("Error opening/writing to serial port :: " + ex.Message, "Error!");
}
}
void sp_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
Thread.Sleep(500);
string data = _serialPort.ReadLine();
this.BeginInvoke(new SetTextDeleg(si_DataReceived), new object[] { data });
}
private void si_DataReceived(string data)
{
textBox1.Text = data.Trim();
}
private TextBox textBox1;
private Label label1;
private RichTextBox richTextBox1;
private Button button1;
}
  • Qu'avez-vous essayé? Avez-vous le code source? Avez-vous le formulaire de recherche? Cette question est pratiquement non-responsable parce qu'il manque des informations
  • Vous pourriez peut-être commencer par lire la documentation du scanner puis de revenir et de demander quelque chose de plus * des*.
InformationsquelleAutor Azeem | 2012-02-05