IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

Pb avec classe CCOM (Gestion de liaison série)


Sujet :

MFC

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Points : 1
    Points
    1
    Par défaut Pb avec classe CCOM (Gestion de liaison série)
    Bonjour,

    Je développe avec VC++ 6.0 et j'utilise la classe CCOM issue de la FAQ et proposée par Farscape.

    Mon pb est que de nombreuses erreurs sont génerées lors de l'utilisation du port série, qui du coup ne fonctionne pas bien :

    L'erreur "Le fichier spécifié est introuvable" est génerée au moment de l'ouverture du port, et ensuite à la réception de données.
    Pour autant, le port est correctement ouvert puisque j'emets et je reçois (mais pas tout le temps) quand même les données.

    J'ai testé la classe avec l'appli SerialDemo, sur un PC sous Win2000 et un sous WinXP, et j'obtiens le même résultat.

    HELP !

    Pierrick

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    que renvoie PortOpen ?
    Note: la fonction GetStringError() est a utiliser que si une méthode de la classe renvoie false...

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    La fonction PortOpen renvoie 'true', et 'GetStringError' n'est appelée que par la fonction OnErrorCom (Comme dans SerialDemo en fait )

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    quel est le context d'utilisation ?
    Qu’en est-il des paramètres de connexion:
    -gestion de flux materiel? /logicielle ?
    -cable adpaté à la gestion de flux ?
    -longueur de cable adaptée à la vitesse de transmission ?
    etc...

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    A priori (c'est à dire sauf s'il y a un paramètre que je n'ai pas vu et que j'ai mal reglé) pas de controle de flux (ni materiel, ni logiciel), com en 9600 8N1 et 19200 8N1, câble croisé de 10 cm entre deux ports com.

    A noter que j'ai le premier message d'erreur juste après l'ouverture du port COM, c'est à dire alors que rien n'a encore été émis.

    Merci beaucoup pour ton aide.

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    pourquoi tu indiques 2 vitesses, c'est 2 essais différents ?
    je recommande quand même une gestion de flux matériel...
    le rts/cts étant le plus commun.

  7. #7
    Nouveau Candidat au Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Oui, deux essais différents.

    Mon appli est 19200.
    L'appli SerialDemo est en 9600.

    Oui, effectivement, c'est mieux d'avoir un contrôle de flux, mais dans mon application ce n'est pas forcément nécessaire : elle reçoit une trame de 60 octets toutes les secondes, donc il ne devrait pas y avoir trop de pb à ce niveau là.

  8. #8
    Nouveau Candidat au Club
    Inscrit en
    Août 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Un élément de plus :
    Je n'ai pas le message d'erreur en mode debugger, mais uniquement en mode execution.
    Et je viens de repartir du SerialDemo.zip de la FAQ. Suis-je le seul a avoir ce message d'erreur ?

Discussions similaires

  1. Windev : Gestion de liaison série par événement série
    Par jurassic pork dans le forum Contribuez
    Réponses: 2
    Dernier message: 02/10/2023, 11h11
  2. Réponses: 4
    Dernier message: 30/03/2007, 16h27
  3. Gestion de liaison série portable
    Par Bayard dans le forum C
    Réponses: 8
    Dernier message: 17/12/2006, 10h54
  4. [CCom] Gestion du port série
    Par Marthym dans le forum MFC
    Réponses: 6
    Dernier message: 23/11/2005, 09h53
  5. Réponses: 7
    Dernier message: 21/06/2005, 16h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo