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 :

chemin relatif !=chemin absolu, mais pourquoi?


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 66
    Par défaut chemin relatif !=chemin absolu, mais pourquoi?
    salut,
    j'ai une application mfc, dedans à un certain moment je dois appeler un autre programme. Pour cela, j'utilise ShellExecute.
    Mais, je dois avoir le chemin relatif de cet exécutable. Or, j'ai vérifié le chemin absolu correspondant à _T(".\\") (car c'est là où se trouve l'exe), mais le résultat n'est pas le bon.
    Pour avoir le chemin absolu de _T(".\\") je fais ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    DWORD  retval=0;
    BOOL   success; 
    TCHAR  buffer[4096]=TEXT(""); 
    TCHAR  buf[4096]=TEXT(""); 
    TCHAR* lpPart[4096]={NULL};
    retval = GetFullPathName(_T(".\\"),4096,buffer,lpPart);
    AfxMessageBox(buffer);
    En réalité, il m'affiche le répertoire correspondant au dernier répertoire ouvert par CFileDialog (oui, je l'appelle dans mon programme!).

    Comment faire pour mettre à jour le _T(".\\") pour qu'il pointe sur le répertoire du projet???

    merci d'avance.

  2. #2
    Membre confirmé
    Inscrit en
    Janvier 2004
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 101
    Par défaut
    avant de faire ton shellexecute, recupere le repertoire courant, gere la chaine qui t ai retournee, en enlevant le dernier repertoire(si tu veux ..\) et ajoute le nom de ton exe.
    Ensuite appelle ShellExecute avec ca.

  3. #3
    Membre confirmé
    Inscrit en
    Novembre 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 66
    Par défaut
    salut,
    mais le répertoire courant n'est plus celui de mon projet!
    après avoir ouvert un CFileDialog (chose que je doit faire plusieurs fois dans mon programme) le répertoire courant devient celui récemment ouvert via CFileDialog.

  4. #4
    Membre chevronné Avatar de stephdim
    Profil pro
    Inscrit en
    Août 2007
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 462
    Par défaut
    un bout de code pour récupérer le répertoire ou se trouve l'executable:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
        int len=0;
     
        if (GetModuleFileName(  AfxGetInstanceHandle(),
                                m_AppPath.GetBufferSetLength(MAX_PATH),
                                MAX_PATH  ))
        {
          LPCTSTR pSeparator=_tcsrchr(m_AppPath,_T('\\'));
          if (pSeparator!=NULL)
            len=(int)(pSeparator+1-m_AppPath);
        }
     
        m_AppPath.ReleaseBuffer(len);
    m_AppPath est de type CString

    @+

  5. #5
    Membre confirmé
    Inscrit en
    Novembre 2007
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 66
    Par défaut
    salut,
    merci stephdim. ton bout de code marche bien.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/06/2012, 09h31
  2. include avec chemin relatif/chemin absolu
    Par doudoustephane dans le forum Langage
    Réponses: 8
    Dernier message: 30/05/2008, 23h57
  3. Lire un fichier en chemin relatif ou absolu
    Par batataw dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 11/10/2007, 16h51
  4. Chemin Relatif et Absolu
    Par Z3c33 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 31/05/2007, 23h50
  5. [access2002] [chemin Relatif Et Absolu]
    Par louroulou dans le forum Access
    Réponses: 1
    Dernier message: 02/06/2006, 14h39

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