SERIAL PRINTER

Résolu
survcopt Messages postés 224 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 13 mai 2022 - 3 juin 2010 à 11:36
survcopt Messages postés 224 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 13 mai 2022 - 3 juin 2010 à 22:42
Bonjour,
Je voudrais savoir si quelq'un aurait une solution pour piloter une imprimante serie TPS700.
Apparemment le protocole et le POS , j'ai le SDK mais je n'arrive pas à démarrer je tourne en rond .
Merci pour votre aide


www.survey-copter.com

5 réponses

survcopt Messages postés 224 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 13 mai 2022 3
3 juin 2010 à 16:47
Merci
Mais j'ai trouvé plus simple en utilisant le serial port et le protocole POS

try
{
// Open the port
serialPort1.Open();

serialPort1.WriteLine(Convert.ToChar(0x1B) + "@");
serialPort1.WriteLine(Convert.ToChar(0x1B) + "a" + Convert.ToChar(0x0)); //à gauche

serialPort1.WriteLine(Convert.ToChar(0x1D) + "!" + Convert.ToChar(0x1));
serialPort1.WriteLine("Ticket N :") ;
serialPort1.WriteLine("Paiement");
serialPort1.WriteLine(" Gratuit [ ]");
serialPort1.WriteLine(" Cheque [ ]");
serialPort1.WriteLine(" Especes [ ]");
serialPort1.WriteLine(" ");
serialPort1.WriteLine("ABO N : ______________");

serialPort1.WriteLine(Convert.ToChar(0x1D) + "!" + Convert.ToChar(0x20));
serialPort1.WriteLine(DateTime.Today.Day.ToString() + "/" + DateTime.Today.Month.ToString() + "/" + DateTime.Today.Year.ToString());
serialPort1.WriteLine(DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString() + ":" + DateTime.Now.Second.ToString());
serialPort1.WriteLine(Convert.ToChar(0x1D) + "!" + Convert.ToChar(0x31));
serialPort1.WriteLine(PlayerName);
serialPort1.WriteLine(CourseType);
serialPort1.WriteLine("SIMU" + Simu.ToString() );
serialPort1.WriteLine(" ");
serialPort1.WriteLine(" ");
serialPort1.WriteLine(" ");
serialPort1.WriteLine(Convert.ToChar(0x1D) + "V" + Convert.ToChar(0x1));

serialPort1.WriteLine(Convert.ToChar(0x1D) + "!" + Convert.ToChar(0x1));
serialPort1.WriteLine("Ticket N :");
serialPort1.WriteLine(Convert.ToChar(0x1D) + "!" + Convert.ToChar(0x20));
serialPort1.WriteLine(DateTime.Today.Day.ToString() + "/" + DateTime.Today.Month.ToString() + "/" + DateTime.Today.Year.ToString());
serialPort1.WriteLine(DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString() + ":" + DateTime.Now.Second.ToString());
serialPort1.WriteLine(Convert.ToChar(0x1D) + "!" + Convert.ToChar(0x31));
serialPort1.WriteLine(PlayerName);
serialPort1.WriteLine(CourseType);
serialPort1.WriteLine("SIMU" + Simu.ToString());


serialPort1.WriteLine(" ");
serialPort1.WriteLine(" ");
serialPort1.WriteLine(" ");
serialPort1.WriteLine(Convert.ToChar(0x1D) + "V" + Convert.ToChar(0x0));

Application.DoEvents();
serialPort1.Close();


www.survey-copter.com
3
jul1409 Messages postés 7 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 3 juin 2010
3 juin 2010 à 15:46
Bonjour,

En c#, il faut utiliser ce qu'on appelle le "Pos for .Net" que l'on trouve ici.
De mémoire avec le téléchargement de "Pos4Net", il y a un exemple.

Voici un lien sur l'architecture du POS ici
L'aide en ligne de microsoft ici

De plus le device qui vous intéresse est le PosPrinter

Et pour finir, bon courage avec ce "protocole POS" qui n'est pas simple lorsque l'on fait de l'auto-apprentissage.

Bonne journée
0
jul1409 Messages postés 7 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 3 juin 2010
3 juin 2010 à 15:54
Re,
Encore une info :
pour tout périphérique Pos, il faut passer par
monPerif.Open( );
monPerif.Claim( );
monPerif.Enable = true;

avant de pour voir réellement dialoguer avec ce périphérique.

et à la fin, ne pas oublier :
monPerif.Enable = false;
monPerif.Release( );
monPerif.Close( );

@+
0
jul1409 Messages postés 7 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 3 juin 2010
3 juin 2010 à 16:54
Il y a confusion,
ceci n'est pas du POS ...
c'est de la commande Escape de bas niveau, en fait vous dialoguez directement avec l'imprimante au lieu de passer par la couche intermédiaire POS.

Enfin si ça marche tant mieux parce que le POS y'faut s'le faire ...

Bonne continuation
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
survcopt Messages postés 224 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 13 mai 2022 3
3 juin 2010 à 22:42
Merci mais comme ça c'est plus rapide


www.survey-copter.com
0
Rejoignez-nous