_inp & _outp [Probleme] - C++ - Programmation
Marsh Posté le 25-04-2004 à 23:28:23
j'ai bossé sur le port com recemment, et j'ai compris d'apres mes recherches que inp et outp ne fonctionnent pas sous xp (et tout systeme NT d'ailleurs)
il faut utiliser CreateFile, WriteFile et ReadFile...
Marsh Posté le 25-04-2004 à 23:38:53
Si c'est possible, et moi ce que j'ai comprit, c'est qu'il faut reecrire un driver .. mais il y en a deja sur internet, mais je n'ai pas reussi a les faire marcher
ex: http://www.zealsoftstudio.com/ntport/
Marsh Posté le 26-04-2004 à 09:21:24
ben, je pense que c'est pas la peine de te compliquer la vie, ca marche tres simplement avec ces fonctions...
et je maintiens que inp et outp ne marchent pas sous NT, ou alors on m'a menti
mais tu veux faire quoi exactement ? tu veux communiquer avec quoi ?
Marsh Posté le 26-04-2004 à 12:43:47
C'est un petit programme permettant de communication via le port COM entre 2 PCs (envoyer des messages & fichiers).
Ce programme marche parfaitement avec VC++ (quand je compile), mais pas avec le compilateur que j'ai chez moi (DevCpp).
Il doit bien exister une solution tout de même .. même en bidouillant. Personne n'aurait une ptite idée?
Marsh Posté le 27-04-2004 à 08:45:09
Sous XP, inp et outp ne fonctionnent pas. Il faut développer un nouveau driver ou utiliser celui existant au travers des fonctions précités.
Sous linux par contre, ca marche tres simplement, car les ports sont accessibles directement.
Marsh Posté le 27-04-2004 à 10:28:14
Ben voyons. Les IO directs sous Linux je demande à voir.
NT et Linux l'interdisent, et c'est tout à fait normal.
Utiliser un driver pour ça c'est _mal_ car c'est outrepasser les recommandations de l'OS (et ça marche pas en user, seul les users privilégiés/admin peut installer un driver).
=> CreateFile( "COM1", ...
=> fopen( "COM1", ...
Pblm traité X fois ici.
Marsh Posté le 27-04-2004 à 11:41:01
perso devant faire un truc portable j'utilise ctb :
http://www.iftools.com/docs.html
Marsh Posté le 25-04-2004 à 22:50:03
Bonjour a tous,
j'essaie de faire un programme pour communiquer via le port COM sous xp mais j'ai quelques problemes.
J'utilise le compilateur DevCpp (je n'ai pas VC++ chez moi), et les fonction _inp et _outp ne sont pas intégrés à la librairie <conio.h> (contrairement a VC++). Je me suis renseigné et j'ai trouvé un peu de doc sur ça, mais je n'ai pas eu de resultat concluant.
Programme en VC++:
Jusqu'ici tout marche impec, avec VC++ bien sur
Avec DevCpp, pour communiquer avec le port COM c'est un peu plus compliqué. J'ai telechargé un fichier DLL (inpout32.dll) et j'ai rajouté un bou de code dans mon fichier, ce qui donne:
Le probleme est le suivant, quelque soit la valeur de
que j'envoie, le registre ne change pas, comme si rien ne se passé, j'ai toujours la valeur FF.
Je m'y prends peut etre mal, mais je n'ai trouvé que cette solution.. j'espere que quelqu'un pourra m'aider
Merci d'avance!
Message édité par mesta le 25-04-2004 à 22:53:37