none
IntelliSense ne répond plus RRS feed

  • Question

  • Bonjour,
    dans un projet C++ MFC avec VS2008 pro pour win32, l'aide à l'édition "IntelliSense n'est plus disponible" ... au bout d'un certain temps ou d'un certain nombre de lignes de code ou d'autre chose que je n'arrive pas à cerner
    J'ai suivi la recommandation pour le dépannage c.a.d. supprimer le fichier .ncb dans le répertoire racine du projet. Mais rien n'y fait.
    Les actions dans le menu Edition>IntelliSense>... n'ont pas d'effet également.
    Comme je sauvegarde de temps à autre mon projet, j'ai une copie moins avancée dans lequel IntelliSense fonctionne correctement à l'édition.
    Que faire d'autre?
    Bernard
    lundi 15 mars 2010 08:47

Réponses

  • Bonjour,

     

    J’ai testé plusieurs scenarios MFC et apparemment l’IntelliSense ne fonctionne si on déclare la classe inline et on essaye d’accéder aux méthodes dans le fichier .h

     

    Si vous ne déclarez pas votre class inline vous pouvez avoir accès aux méthodes dans les fichiers .cpp ou vous écrivez vos fonctions.

     

    Je pense que c’est à cause du système interne d’IntelliSense, qui ne reconnait pas les méthodes dans les fichiers .h.

     

    Par contre, si vous utilisez this->methode(), IntelliSense fonctionne très bien.

     

    Cordialement,

    Alex


    Alex Petrescu - MSFT
    • Marqué comme réponse Alex Petrescu vendredi 19 mars 2010 10:02
    jeudi 18 mars 2010 11:51

Toutes les réponses

  • Bonjour,

     

    Je vous prie de vérifier si une des situations présentées dans cette description s’applique à votre cas :

    http://support.microsoft.com/kb/190968

     

    Cordialement,

    Alex


    Alex Petrescu - MSFT
    mardi 16 mars 2010 15:04
  • Bonjour,
    j'ai lu attentivement la description de bogue du lien proposé et par rapport à mon niveau en programmation et utilisation VS je peux seulement décrire succintement les contours de mon projet et vous vous verrez bien si ça colle avec l'une des situations décrites:

    Une application MFC pour win32, à base de boite de dialogue créé à partir d'un FormView.
    Dans ce FormView, j'ai quelques composants ActiveX: boutons; labels; spinbouton et un spreadsheet 10.0
    VS a généré un ApplicationDoc.h et .cpp, ApplicationView.h et .cpp ainsi que les .h et .cpp pour le spreadsheet.

    avec le wizard j'ai ajouté  une classe du genre "Classe C++"  en cochant l'option "inline" je l'appelle CClasseA.
    CClasseA est instanciée au clic d'un bouton de l'applicationView avec appel à une fonction de type OnBnClickedButtonGo()

    Dans ApplicationView.cpp et dans ClasseA.h les méthodes travaillent sur des objets de type CString
    Si je crée un:
    CString chaine("abc");
    dans ApplicationView.cpp et dans ClasseA.h, alors actuellement si je commence à taper

    chaine.

    dans ApplicationView.cpp toutes les méthodes sont déroulées au curseur
    dans ClasseA.h j'ai le message 'Aucune information supplémentaire disponible" veuillez consulter....

    voilà


    cordialement,
    Bernrd
    mercredi 17 mars 2010 17:38
  • Bonjour,

     

    J’ai testé plusieurs scenarios MFC et apparemment l’IntelliSense ne fonctionne si on déclare la classe inline et on essaye d’accéder aux méthodes dans le fichier .h

     

    Si vous ne déclarez pas votre class inline vous pouvez avoir accès aux méthodes dans les fichiers .cpp ou vous écrivez vos fonctions.

     

    Je pense que c’est à cause du système interne d’IntelliSense, qui ne reconnait pas les méthodes dans les fichiers .h.

     

    Par contre, si vous utilisez this->methode(), IntelliSense fonctionne très bien.

     

    Cordialement,

    Alex


    Alex Petrescu - MSFT
    • Marqué comme réponse Alex Petrescu vendredi 19 mars 2010 10:02
    jeudi 18 mars 2010 11:51
  • Merci Alex,

    leçon retenue!

    cordialement,

    Bernard

    vendredi 19 mars 2010 07:27