Salut,
je développe une appli PDA pour la lecture de codes barres en C# avec Visual Studio 2005. Je me sert du windows mobile 5.0 pocket PC device. Le PDA que j'utilise est un Opticon PHL 5200 avec scanner intégré.
Sur ce modèle, le scanner est activé par défaut et il suffit d'ouvrir n'importe quelle appli texte pour afficher le code barre scanné. De la même manière, au lancement de mon appli, je positionne le focus dans une textbox. Ainsi, quand je scanne un code, celui-ci s'affiche dans la textbox dont je peux déterminer le comportement.
Par exemple :
// Création d'un fichier texte dans lequel on écrit les codes
StreamWriter Sw = new StreamWriter("test.txt");
public CodesBarres()
{
InitializeComponent();
textBox1.Focus(); // Positionnement du focus dans la textBox (curseur)
}
// Procédure lorsqu'un bouton du PDA est enfoncé
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if ((e.KeyCode == System.Windows.Forms.Keys.Return)) // Si le keycode reçu est Enter, ça correspond à la fin du code barre
{
Sw.WriteLine(textBox1.Text); // On écrit le contenu de la text box dans le fichier texte
textBox1.Text = null; // Effacer le contenu de la textBox pour pouvoir lire un nouveau code
}
}
Sw.Close(); // Ne pas oublier de fermer le streamwriter
Dans mon cas, le scanner du laser s'allume quand j'appuie sur le bouton record. Lorsqu'un code est effectivement lu par le scanner (bip!), le keycode renvoyé est Enter.
Après pour l'Ascii, j'ai pas traité ce cas alors je sais pas.
J'espère avoir pu vous aider (pour une fois que c'est moi qui poste!)