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

VC++ .NET Discussion :

VC++ Express 2005 error C2146: syntax error : missing ';' before identifier 'orig'


Sujet :

VC++ .NET

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut VC++ Express 2005 error C2146: syntax error : missing ';' before identifier 'orig'
    Bonjour,
    débutant sous Visual Studio je galère a compiler un filtre directshow,
    j'arrive, pour l'instant, a compiler parfaitement mes autres prog utilisant directshow, mais là j'ai l'erreur

    error C2146: syntax error : missing ';' before identifier 'orig'
    Voici le bout de code incriminé

    struct ContentEncodingFormat {
    AM_MEDIA_TYPE orig;//c'est cette ligne qui est incriminée
    ContentEncodings chain;
    };
    Le type AM_MEDIA_TYPE est bien détecté (dans le fichier strmif.h, d'ailleurs si je le redeclare au dessus de la structure, il me dit que c'est déjà déclaré.

    Merci de votre aide,

  2. #2
    Membre confirmé Avatar de Mayti4
    Inscrit en
    Février 2004
    Messages
    442
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 442
    Points : 488
    Points
    488
    Par défaut
    Obtiens-tu l'erreur C2065 avant celle-çi ?

    Ca compile avec un autre compilateur ?

    Sinon l'erreur peut venir des lignes plus haut.
    L'itération est humaine; la récursion, divine.

  3. #3
    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 519
    Points
    41 519
    Par défaut
    Tu compiles bien en C++ ?

    Si tu compiles en C, tu pourrais avoir besoin de rajouter le mot-clé enum ou struct...
    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.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    merci pour vos réponses,
    je n'obtiens pas d'erreur C2065 avant celle ci,

    j'obtiens juste cette erreur 2146 et je compile bien en C++.

    Par contre je n'ai pas testé avec un autre compilateur, je passe plus de temps a me battre avec des compilateurs qu'a coder et ca commence a me gaver

  5. #5
    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 519
    Points
    41 519
    Par défaut
    Tu peux nous montrer la déclaration de AM_MEDIA_TYPE ?
    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.

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    Voici la definition

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    typedef struct _MediaType {
    GUID majortype;
    GUID subtype;
    BOOL bFixedSizeSamples;
    BOOL bTemporalCompression;
    ULONG lSampleSize;
    GUID formattype;
    IUnknown *pUnk;
    ULONG cbFormat;
    [size_is(cbFormat)] BYTE *pbFormat;
    } AM_MEDIA_TYPE;
    dans le sdk de directx

  7. #7
    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 519
    Points
    41 519
    Par défaut
    Ah oui, donc c'est bien un typedef tout ce qu'il y a de plus normal...
    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.

  8. #8
    Membre émérite
    Avatar de la drogue c'est mal
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    2 253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 2 253
    Points : 2 747
    Points
    2 747
    Par défaut
    il y a pas des ifdef qui se balade dans le .h ?
    il y a du linge sur la corde à linge

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    Y'a ca au debut du fichier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #ifndef DS_GUIDS_H
    #define DS_GUIDS_H
     
    #include "com.h"
    #include "../wine/module.h"
    #include "../wine/windef.h"
    #include "../wine/vfw.h"
     
    //#define Debug if(1)
    #define Debug if(0)

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    Voilà j'ai essayé à mon travail sous Visual Studio 2003 et même erreur avec quelques précisions
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     error C2146: erreur de syntaxe : absence de ';' avant l'identificateur 'orig'
    error C2501: 'ContentEncodingFormat::AM_MEDIA_TYPE' : Spécificateurs de type ou de classe de stockage manquants
    error C2501: 'ContentEncodingFormat::orig' : Spécificateurs de type ou de classe de stockage manquants
    Mercu de votre aide

  11. #11
    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 519
    Points
    41 519
    Par défaut
    Ben là, c'est vraiment qu'il ne connait pas le type AM_MEDIA_TYPE et croit que tu déclares une variable.

    Si AM_MEDIA_TYPE est déjà déclaré, peut-être manque-t-il un namespace ou un truc du genre...
    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.

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    merci de ta réponse,
    le gros délire c'est que si je redeclare ce type directement dans mon propre code il me dit "redeclaration type dejà déclaré"

    Ceci etant j'utilise un namespace dans mon code mais les autres types externes sont reconnus.

    Que rajouter ?

    Autre question qui n'a rien a voir,
    j'ai vu dans certains exemple de code des
    using namespace System.drawing.xxx
    Je n'ai jamais réussi a compiler ce genre de code...

  13. #13
    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 519
    Points
    41 519
    Par défaut
    C'est du .Net, le namespace System...
    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.

  14. #14
    Membre confirmé Avatar de Mayti4
    Inscrit en
    Février 2004
    Messages
    442
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 442
    Points : 488
    Points
    488
    Par défaut
    Tu utilises quel SDK de DirectX ?
    L'itération est humaine; la récursion, divine.

  15. #15
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    J'utilise directx avril 2006 et la derniere version de directshow qui date un peu.

Discussions similaires

  1. runtime error 3075 syntax error (comma)
    Par pra3t0r dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 14/06/2011, 13h56
  2. Réponses: 2
    Dernier message: 05/10/2009, 16h43
  3. Réponses: 27
    Dernier message: 16/03/2009, 09h36
  4. error near "(" :syntax error
    Par elekis dans le forum SQLite
    Réponses: 1
    Dernier message: 26/09/2008, 23h37
  5. Réponses: 7
    Dernier message: 18/03/2008, 17h58

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