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

C++/CLI Discussion :

Erreur 2872 system: symbole ambigu


Sujet :

C++/CLI

  1. #1
    Membre à l'essai
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Août 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Août 2015
    Messages : 16
    Points : 13
    Points
    13
    Par défaut Erreur 2872 system: symbole ambigu
    Bonjour,

    Je me mets à la programmation en c++/cli avec visual studio 2008 express. j'ai, après quelques soucis, réussi à lire, écrire, creer et enregistrer un fichier Excel en utilisant Microsoft::Office::Interop::Excel par contre dès que j'essaye avec Word, je me retrouve avec une trentaine d'erreur 2872 pour "symbole 'system' ambigu". Si quelqu'un pouvait me dire ce que j'oublie, j'en serai très heureux.
    Voici les "using" que j'ai en entête :

    using namespace Microsoft::Office::Interop::Word;
    using namespace System::Reflection;
    using namespace System;
    using namespace System::IO;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System:ata;
    //using namespace System:ata::OleDb;
    using namespace System:rawing;
    using namespace System::Text;
    using System::String;

    J'ai évidemment ajouté la référence nécessaire.

    Merci

  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 519
    Points
    41 519
    Par défaut
    C'est parce que le namespace Microsoft::Office::Interop::Word contient une classe System, qui conflicte avec le namespace System de la racine.
    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
    Membre à l'essai
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Août 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Août 2015
    Messages : 16
    Points : 13
    Points
    13
    Par défaut
    Merci mais je m'en doutais un peu, le problème est que je ne sais pas comment contourner ce fait.

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations forums :
    Inscription : Juillet 2012
    Messages : 200
    Points : 342
    Points
    342
    Par défaut
    Citation Envoyé par rverron Voir le message
    Merci mais je m'en doutais un peu, le problème est que je ne sais pas comment contourner ce fait.
    Utiliser le nom complet des classes et oublier les using
    Donc retirer la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    using namespace Microsoft::Office::Interop::Word;
    et à chaque que vous avez besion de faire référence à un élément de l'espace de nom, faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Microsoft::Office::Interop::Word::NomElement...

  5. #5
    Membre à l'essai
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Août 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Août 2015
    Messages : 16
    Points : 13
    Points
    13
    Par défaut
    Merci beaucoup pour la réponse, je vais pouvoir continuer.

    Résolu.

  6. #6
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 073
    Points : 12 119
    Points
    12 119
    Par défaut
    Ou juste importer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    using namespace Microsoft::Office::Interop;
    Ainsi vous n'aurez qu'à préfixer les noms liés à Word par Word:

  7. #7
    Membre à l'essai
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Août 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Août 2015
    Messages : 16
    Points : 13
    Points
    13
    Par défaut
    Merci bien. Maintenant il me reste à trouver comment agir sur Word....

  8. #8
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 073
    Points : 12 119
    Points
    12 119
    Par défaut
    Si c'est pour créer des fichiers Word, je vous conseil d'utiliser de SDK Office plutôt que de l'interop Word.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Août 2015
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Août 2015
    Messages : 16
    Points : 13
    Points
    13
    Par défaut
    Bacelar,

    Merci pour votre conseil mais j'ai déjà essayé de télécharger le SDK Office ( Il me semble même que le lien venait de ce site ) sans succès.
    Je vais retenter cela et essayer de trouver de la doc là-dessus.

    Merci encore

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. erreur : The system is out of memory. Use server side cursors
    Par kergoussel dans le forum ODI (ex-Sunopsis)
    Réponses: 1
    Dernier message: 06/12/2007, 12h10
  2. Réponses: 4
    Dernier message: 17/11/2007, 10h10
  3. Erreur avec system.in.readln
    Par McCoy32 dans le forum Langage
    Réponses: 4
    Dernier message: 15/10/2007, 17h49
  4. Erreur Non-System disk à l'allumage de windows XP
    Par sosophie dans le forum Windows XP
    Réponses: 3
    Dernier message: 03/04/2007, 13h56
  5. Erreur chargement de symbole avec Axis
    Par badr16 dans le forum C++
    Réponses: 4
    Dernier message: 14/06/2006, 16h55

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