[C++] besoin d'un coup de main (newbie inside).

besoin d'un coup de main (newbie inside). [C++] - C++ - Programmation

Marsh Posté le 23-04-2002 à 09:47:34    

Salut à tous, ça faisait longtemps que j'étais pas venu trainer sur prog mais j'vous ai pas oublié, vous inquiétez pas.
 
Je ne connais pas C++ (ou très peu) et j'ai besoin de faire un ch'ti truc en visual C++.
 
Il s'agit tous simplement d'envoyer des données sur le port parallèle, j'ai trouvé le code suivant (pour Borland C++), qui évidémment ne fonctionne pas avec visual :  
 
#include <stdio.h>
#include <dos.h>
#include <conio.h>
 
/********************************************/
/*This program set the parallel port outputs*/
/********************************************/
 
void main (void)
{
clrscr();             /* clear screen */
outportb(0x378,0xff); /* output the data to parallel port */
getch();              /* wait for keypress before exiting */
}
 
 
bon ça ça tourne sous dos, moi il faut que ça tourne sous windows, suffit-il de changer le header pour que ça le fasse? J'ai essayé ça a pas l'air de gêner.
Sinon il ne faudrait pas que ça m'ouvre de fenêtre, donc le clrscr() et le getch() je m'en fous.
 
ce qui m'interesse, c'est outportb(0x378,0xff) (ou peut-être outp). Pourriez-vous m'indiquez les headers à utiliser, ainsi que la syntaxe de cette fonction?
 
Pendant que j'y suis, connaissez-vous un bon site de référence pour visual C++ (autre que le msdn car je ne suis pas abonné).
 
Marci à tous.

Reply

Marsh Posté le 23-04-2002 à 09:47:34   

Reply

Marsh Posté le 23-04-2002 à 12:40:18    

je sais pas mais tt ce que je peut te dire c'est que si tu es ss nt4,2000, ou xp, tu ne peut pas utiliser ces fonctions bas niveau car c'est protégé, il faut utiliser un driver style "port95nt".

Reply

Marsh Posté le 23-04-2002 à 12:41:34    

c'est sous win98, donc no problemo.

Reply

Marsh Posté le 23-04-2002 à 12:43:31    

duch a écrit a écrit :

c'est sous win98, donc no problemo.  



ok :)
par contre désolaé je peut pas t'aider je n'ai jamais utilisé le port // sans le driver

Reply

Marsh Posté le 23-04-2002 à 13:34:03    

mr_mat a écrit a écrit :

ok :)
par contre désolaé je peut pas t'aider je n'ai jamais utilisé le port // sans le driver  




 
comment NT fait-il pour protéger l'accès en bas niveau ?
au contraire ça devrait êtr facile ?
Je comprends pas ...
 
On peut modifier le bios sous NT ?
 
@^++
 
:hello:


---------------
Visitez mon site : http://www.jujubarbare.linux-fan.com
Reply

Marsh Posté le 23-04-2002 à 13:55:04    

juju_le_barbare a écrit a écrit :

 
 
comment NT fait-il pour protéger l'accès en bas niveau ?
au contraire ça devrait êtr facile ?
Je comprends pas ...
 
On peut modifier le bios sous NT ?
 
@^++
 
:hello:  




je sais pas si on peut modif le bios, jamais essayé (je le fais avec une disquete boot)

Reply

Marsh Posté le 23-04-2002 à 15:14:51    

euh sinon personne peut m'aider?

Reply

Marsh Posté le 23-04-2002 à 17:23:20    

merci pour les réponses à propos du driver pour accéder au port sous NT, mais je n'ai pas ce problème là, je suis sous 98!!!
 
salut carbon_14

 

[jfdsdjhfuetppo]--Message édité par duch le 23-04-2002 à 17:23:40--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 23-04-2002 à 19:15:04    

[:nul_olive]

Reply

Marsh Posté le 23-04-2002 à 19:15:04   

Reply

Marsh Posté le 24-04-2002 à 11:12:58    

pliiiiiiiz!

Reply

Marsh Posté le 24-04-2002 à 11:22:38    

duch a écrit a écrit :

[:nul_olive]


:lol: ce smiley ...
 
les ports ne sont accessibles qu'en code 16 bits, donc pas en windows (32 bits). je ne sais pas ce que tu veux faire avec ton port 0x378, il faut que tu trouves un autre moyen d'y accéder (une api, des fonctions déjà existantes dans windows, etc.)

 

[jfdsdjhfuetppo]--Message édité par youdontcare le 24-04-2002 à 11:47:00--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 24-04-2002 à 11:43:36    

ah ok, et tu connaitrais pas un truc comme ça par hasard???
 
car comme je l'ai dit, je suis un newbie et les fonctions de windoze...
 
j'vais essayer de le faire marcher avec le driver I/O bidule là...

Reply

Marsh Posté le 24-04-2002 à 11:46:45    

duch a écrit a écrit :

ah ok, et tu connaitrais pas un truc comme ça par hasard???


non. si j'en crois google, tu veux utiliser le port parallèle. cherche 'parallel port windows' sous google, groups.google, 'parallel port programming', etc.

Reply

Marsh Posté le 24-04-2002 à 14:25:36    

merci les gars pour les réponses  
 
en fait ça marchais, mais l'adresse du port n'était pas bonne  
je l'avais réglée sur 0x378 dans le bios mais pour je ne sais quelle obscure raison elle a été changé en 0x3BC?!?  
 
M'enfin ça marche  
 
et pour répondre à la question, (qui n'a pas encore été posée) c'est pour contrôler une carte électronique 8 relais qui commande des lampes et des moteurs. Et je contrôle tout ça depuis director (grâce à un xtra développé en C++).

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed