Page 1 sur 1

Récupérer le répertoire d'un executable SearchPath_

Publié : sam. 23/juil./2005 11:34
par olivier
J'avais besoins de ça et je ne l'ai pas trouvé sur le forum alors je le post....
Aide qui aura le besoins 8O

Code : Tout sélectionner

;exemples de 3 fonctions intéressantes :
;      GetCurrentDirectory_
;      SearchPath_
;      SetCurrentDirectory_


Procedure.s path(fichier$) ;petite procedure pour récuperer le chemin d'un nom de fichier
    i=Len(fichier$)
    Repeat
        i=i-1
    Until Mid(fichier$,i,1)="\"
    Path$=Left(fichier$,i)
    ProcedureReturn Path$
EndProcedure


;Quelque fonction bien utile pour récupérer les noms de répertoires 
rep.s=Space(256) ; bien définir la variable sinon ça plante....

;Tout d'abord le répertoire courant
GetCurrentDirectory_(256,rep)
MessageRequester("rep_courant : ",rep,0)

;Le répertoire qui contient notre executable
;tres interessant dans des cas tel celui ci :
;    - pour un  logiciel type lecteur : film, photo, musique, texte....
;      lorsque l'on utilise un fichier ini pour garder les parametre utilisateur
;      et que l'on veux pouvoir appeler le logiciel en cliquant sur un fichier dans l'explorateur
;      on a besoin de connaitre le repertoire où est le logiciel
SearchPath_(NULL,"repertoire.exe",NULL, 256, rep,NULL );
MessageRequester("rep logiciel : ",path(rep),0)

;On peut directement changer le répertoire courant pour que le logiciel marche comme lorsque l'on clique dessus
SetCurrentDirectory_(path(rep))

;Vérification du répertroire courant
GetCurrentDirectory_(256,rep)
MessageRequester("rep_courant apres changement : ",rep,0)
Pour bien voir ce qu'il fait
Compiler le code avec le nom repertoire.exe
Créer un raccourci dans un autre répertoire
Changer le répertoire " Démarrer dans :" dans les options du raccourci
et :)

Publié : sam. 23/juil./2005 11:46
par Dr. Dri
Regarde l'aide:
GetPathPart(), GetFilePart() et GetExtensionPart()

Fais une recherche sur le forum (francais) pour connaître le nom de l'exécutable. Y'a des méthodes plus efficaces ;)
http://purebasic.hmt-forum.com/viewtopi ... highlight=

Dri ^^

Publié : sam. 23/juil./2005 12:47
par Backup
J'avais besoins de ça et je ne l'ai pas trouvé sur le forum alors je le post....
tu l'a pas demandé non plus !! :lol:

enfin c'est sympath de ta part de partager .... :D

Publié : dim. 24/juil./2005 9:08
par olivier
La fonction importante est : SearchPath_
Le reste c'est de la broutille, ne vous égarez pas avec le découpage d'un nom de fichier.....

Et si je fais une recherche avec SearchPath sur le forum on ne trouve rien du tout !

Publié : dim. 24/juil./2005 9:35
par Backup
Et si je fais une recherche avec SearchPath sur le forum on ne trouve rien du tout !
SearchPath_ est une api ! donc il te faut recuperer "win32.HLP"
pour avoir une bonne partie des apis

:D

Publié : dim. 24/juil./2005 10:03
par gansta93
D'ailleur en parlant de path etc... y a certaines api bien utiles qui remplacent plain de fonctions que l'on fait en trois lignes, je pense notamant à PathAddBackSlash_()

Publié : dim. 24/juil./2005 22:32
par Le Soldat Inconnu
PathAddBackSlash_()

Ah oui, tiens, très bonne indication, je ne connaissais pas :D