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

Windows Discussion :

Conflicting types et CreateFile()


Sujet :

Windows

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 16
    Points : 6
    Points
    6
    Par défaut Conflicting types et CreateFile()
    Bonjour à toutes et à tous,

    J'essaie d'établir une communication par port série en C sous Windows XP.

    Cependant, alors que je n'en suis qu'à l'ouverture du fichier du port, j'ai déjà une erreur :

    conflicting types for port1
    J'utilise CodeBlocks pour Windows et le compilateur Gcc... Une idée de ce qui pourrait provoquer cela ?

    Voici le code de mon programme:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    #include <stdlib.h>
    #include <string.h>
    #include <stdio.h>
    #include <windows.h>
    
    #define OPEN_EXISTING 3
    #define GENERIC_READ 0x80000000
    #define GENERIC_WRITE 0x40000000
    #define FILE_FLAG_OVERLAPPED 0x40000000
    
    /*Déclaration des variable*/
    HANDLE port1; /*(ou un autre nom)*/
    
    
    port1 = CreateFile("COM1", GENERIC_READ, 0, 0, OPEN_EXISTING, 0, 0);

    Merci d'avance à toutes celles / tous ceux qui participeront =)

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    Par défaut
    Vérifie qu'il n'existe pas déjà une variable port1 déclarée ailleurs.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 16
    Points : 6
    Points
    6
    Par défaut
    Salut Médinoc,

    A vrai dire j'ai essayé avec d'autres noms de variables comme "abcdef" et j'obtiens toujours exactement le même message (sauf que "for port1" devient "for abcdef" évidemment).

    Et mon fichier ne contient exclusivement que ce que j'ai mis dans le post...

  4. #4
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    Par défaut
    Ah, j'ai pigé!
    Tu as placé une instruction en dehors de toute fonction!
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 16
    Points : 6
    Points
    6
    Par défaut
    Ola oui... je débute en C, mais alors celle-là je l'avais encore jamais faite.

    Bah problème de conflit de types résolu... j'ai oublié le main...


    Merci bien pour cette rapidité et cette efficacité Médinoc.

    Bonne soirée.

    PS : Ah en même temps, le nom de fichier à mettre pour accéder au port série 1 ou 2... c'est "COM1" / "COM2" ou "\\\\.\\COM1" ou "\\\\.\\1" ?


    Merci d'avance.

  6. #6
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    Par défaut
    Normalement, "COM1" et "COM2" suffisent.

    ...Entourés de la macro TEXT() ou _T() pour que ça compile même quand le projet est réglé en Unicode.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 16
    Points : 6
    Points
    6
    Par défaut
    Ok, merci bien !


    Pour TEXT(), conrètement cela évite les conflits à quel niveau entre Unicode / et autres ?

    J'ai cherché sur le net des infos sur TEXT() sans succès.

  8. #8
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 16
    Points : 6
    Points
    6
    Par défaut
    Ok, merci bien


    Bonne journée

Discussions similaires

  1. Conflicting type error
    Par Rav3nL0g dans le forum Débuter
    Réponses: 4
    Dernier message: 06/02/2012, 15h24
  2. conflicting types !?
    Par XsaiddX dans le forum Débuter
    Réponses: 4
    Dernier message: 13/07/2009, 12h50
  3. pb de conflicting types for
    Par Fahmi06 dans le forum C
    Réponses: 1
    Dernier message: 26/12/2008, 14h26
  4. Conflicting types dans fonction déclarée
    Par Spikeuh dans le forum C
    Réponses: 8
    Dernier message: 22/06/2008, 17h49
  5. conflicting types
    Par semaj_james dans le forum C
    Réponses: 3
    Dernier message: 28/11/2005, 12h10

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