PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV Mobile 2024 → Impression sur bluetooth avec sEcrit
Impression sur bluetooth avec sEcrit
Started by CédricM, Jul., 29 2008 12:27 PM - 3 replies
Posted on July, 29 2008 - 12:27 PM
Bonjour à tous,

Je tente d'implémenter une fonction d'impression pour l'un de nos logiciels mobiles, et particulièrement sur un PDA en Windows CE en ce moment. Celui-ci devrait imprimer via bluetooth sur une imprimante SATO (tickets). Le bluetooth étant lié au port COM7 sur le PDA, j'utilise la fonction sEcrit() pour un ajouter des données.

Seulement voilà, entre chaque caractère envoyé via la fonction sEcrit, on y retrouve un caractère NULL, faussant complètement les commandes envoyées à l'imprimante.

Je précise que j'ai fais le test sur le port COM1 d'un PC fixe, tout se passe très bien. C'est vraiment au sein du PDA que ce caractère NULL apparait (Hex:00).

Avez-vous une idée du problème ?

Merci d'avance.
Posted on July, 30 2008 - 12:24 PM
Bonjour,

Je tente d'implémenter une fonction d'impression pour l'un de nos
logiciels mobiles, et particulièrement sur un PDA en Windows CE en ce
moment. Celui-ci devrait imprimer via bluetooth sur une imprimante SATO
(tickets). Le bluetooth étant lié au port COM7 sur le PDA, j'utilise la
fonction sEcrit() pour un ajouter des données.

Seulement voilà, entre chaque caractère envoyé via la fonction sEcrit, on
y retrouve un caractère NULL, faussant complètement les commandes envoyées
à l'imprimante.

Je précise que j'ai fais le test sur le port COM1 d'un PC fixe, tout se
passe très bien. C'est vraiment au sein du PDA que ce caractère NULL
apparait (Hex:00).

Avez-vous une idée du problème ?


Les chaînes sous Windev Mobile (en exécution sur le pocket mais pas en
simulation) sont des chaînes UNICODEs. Si vous écrivez la chaîne directement
sur le port COM (et que la chaîne ne contient que des caractères latins) il
est normal de revoir des zéros entre chaque caractères.

Essayez avec sEcrit(UnicodeVersAnsi (chaîne))

Cordialement,
Guillaume M.
Posted on July, 30 2008 - 12:31 PM
Après parcours d'autres sujet du forum, j'ai suivi l'exemple de la LST71. Il s'agissait d'un problème de gestion UNICODE sur les PDA : les chaînes sont codées sur 2 octets, il fallait donc utiliser la fonction UnicodeVersOem() fournie dans l'exemple de la LST pour convertir ces chaînes.

Du coup, tout fonctionne parfaitement.
Posted on August, 23 2010 - 6:58 PM
et pour imprimer des images comment fait-on?