inp() et outp() [C] - Programmation
Marsh Posté le 20-02-2002 à 20:55:16
si j'ai bien compris elles servent a écrire/lire sur les ports E/S.
J'en ai besoin pour allumer une diode sur le port parallele. Mais je sais qu'on peut s'en servir pour ultiliser le mode graphique sous dos ou faire l'aquisition d'une touche du clavier.
Elles ont un equivalent sous turbo c: inpoutb() et output().
Sous borland j'ai lu qu il fallait utiliser inpoutb() et output() avec #include <dos.h>. Mais il ne trouve pas les fonctions.
J'avais l'impression que ces fonctions etaient bcp utilisées?
Marsh Posté le 20-02-2002 à 22:28:11
Heu très utiliser faut pas pousser si j'avais pas eu des cours de conception de circuit j'en aurais jamais netendu parler (t'as quà voir je me souvenais même plus de ces fonctions ), heu si non je vois pas trop comment solutionner ton pb, je pense qu'il y a unr librairie qu'il ne trouve pas ou un truc du genre
Marsh Posté le 21-02-2002 à 09:21:37
Il me semble que ces fonctions ne sont plus autorisées si on n'est pas en projet 16 bits (DOS ou Windows 3.x). L'écriture directe sur les ports peut aboutir à des résultats catastrophiques (:pt1cable (je pousse un peu).
Modernisme et protection des errements oblige, stabilité avant tout. Dans VB3, il n'y avait déja plus ces fonctions (j'avais dû écrire une DLL pr les remplacer !)
Il doit falloir passer par des VxD ou des trucs comme ça. Faut attendre réponse de spécialistes.
J'utilise tj inp() outp() mais sous Win 3.11 (! conservateur )
Marsh Posté le 21-02-2002 à 10:19:46
oulà là, que de bêtises dîtes ici
1) ce n'est pas inp() et outp mais _inp() et _outp(). Rajoute donc ce underscore avant chaque fonction et Ôh miracle ça marchera.
2) ces fonctions ne fonctionnent PAS sous les systèmes NT (WinNT, 2000 et XP)
pour plus de précisions : http://www.programmationworld.com
Marsh Posté le 21-02-2002 à 11:03:20
Mais c'est bizarre qu'il ait cette erreur ...
T'as pas trafiquouillé ton projet ?
Sinon t'as qu'a essayer avec des __asm in et __asm out ...
Marsh Posté le 21-02-2002 à 11:15:15
sinon pour NT :
http://www.beyondlogic.org/porttalk/porttalk.htm
Marsh Posté le 21-02-2002 à 13:30:13
avec les _ oh miracle ca marche mais pourquoi dans mon bouquin il parle de inp() et pas de _inp()?
le _ veut dire quelque chose de particulier?
merci de toutes ces réponses
[jfdsdjhfuetppo]--Message édité par 1234--[/jfdsdjhfuetppo]
Marsh Posté le 21-02-2002 à 13:36:05
Les _fopen, _fread ... sont obselet c pas trop conseillé tout sa car XP NT et tou se qui va suivre se servent des fonctions API
essait de voir les équivalants en API...
MAX_BAUD
Marsh Posté le 20-02-2002 à 20:19:22
Lorsque j'utilise les fonctions inp() et outp(), j'ai une erreur lors de l'édition de lien :
"Linking...
Cpp1.obj : error LNK2001: unresolved external symbol _inp
Cpp1.obj : error LNK2001: unresolved external symbol _outp
Debug/Cpp1.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe."
Voila je suis sur visual c++ 5.0, je n'ai pas oublié le #include <conio.h>.Que faire !!