bonjour
est ce qu'il est possible de savoir depuis quelle repertoire est lance mon executable
merci
bonjour
est ce qu'il est possible de savoir depuis quelle repertoire est lance mon executable
merci
getcwd() est ton ami
Attention, ça donne le répertoire courant, mais pas nécessairement celui où se trouve l'Exe.
Quand un débutant pose la question, on n'en est jamais sûr.
Je confirme la remarque de Medinoc.
Par contre si je ne m'abuse, la première chaîne de caractère de argv comprend le nom complet de l'exécutable.
En tout cas, je n'ai pas encore à ce jour de problème avec argv[0], mais il se peut que dans certain cas argv soit null, et là je sèche.
Ah en effet, je n'ai vu ça qu'après ma dernière réponse. Le style de son message m'a induit en erreur...
argv[0] n'est absolument pas garanti contenir le chemin complet. Il peut aussi bien contenir juste le nom (et pas celui de l'exe, mais celui qui a été tapé: En cas d'alias, ça fait une différence) ou bien rien du tout.
j'ai essayer ceci
microsoft visual c++ n'aime pas ce qui a dans le include
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 #include <unistd.h> char * getcwd (char * buf, size_t size);
ca ne fonctionne pas, je travail sous windows
sur le lien de getcwd c dans la categorie linux
le repertoire courant m'ira tres bien
merci
unistd.h n'existe pas sous Windows.
La version Microsoft de getcwd() est déclarée dans direct.h.
OK pour direct.h
donc j'ai essaye ceci
je doit recuperer ou le repertoire courant?
Code : Sélectionner tout - Visualiser dans une fenêtre à part char * getcwd (char * buf, size_t size);
ceci ne fait rien!
je ne peu meme pas mettre un point d'arret sur cette ligne
merci
Je reviens sur ce post car en effet c'etait le pas le chemin du repertoire courant que je souhaite mais plutot celle de l'executable
des idées?
merci
Comme tu utilises Visual C++ donc Windows, GetModuleFileName donne le chemin complet du processus courant. Tu peux ensuite extraire facilement le répertoire (_splitpath peut t'aider dans cette tâche).
GetCurrentDirectory() (voir MSDN) renvoi le repertoire courant. Si ca peut t'aider, on sait jamais![]()
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager