Quote:
Malgré les modifications proposées je ne suis pas plus éclairé sur les problemes de mon programme.
A vrai dire ça m'étonne pas bcp mais des fois une mauvaise utilisation peut donnée de mauvais résultats.
ton descripteur COM est il correctement initialisé (je suppose que oui puisque tu arrive à écrire mais bon comme en théorie c'est plus facile à lire qu'a écrire...)
Autre chose que je connais depuis peu,
L'utilisation de select() :
http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man2/select.2.html
int CComSerie::Lire(unsigned int Nb, char* pChaine)
{
int Res=0;
fd_set rfds;
FD_ZERO(&rfds);
FD_SET(COM, &rfds);
int retval = select(COM, &rfds, NULL, NULL, NULL);
if(retval){
Res = read ( COM , pChaine , Nb );
cout<<" (dans CComSerie read) Res = "<<Res<<endl;
if( Res == -1 )
{
printf("errno=%d\n", errno); // affichage du numéro de l'erreur
cout<<" (dans CComSerie read) Erreur Lecture"<<endl;
return -1;
}
}else{
return –1 ; // par exemple
}
return Res;
}
Bon lis bien le lien que j'ai mis car j'ai répondu un peu rapidement... :?
A vrai dire ça m'étonne pas bcp mais des fois une mauvaise utilisation peut donnée de mauvais résultats.
ton descripteur COM est il correctement initialisé (je suppose que oui puisque tu arrive à écrire mais bon comme en théorie c'est plus facile à lire qu'a écrire...)
Autre chose que je connais depuis peu,
L'utilisation de select() :
http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man2/select.2.html
Bon lis bien le lien que j'ai mis car j'ai répondu un peu rapidement... :?