Connaitre le chemin de l'executable
- Philippe_GEORGES
- Messages : 140
- Inscription : mer. 28/janv./2009 13:28
Connaitre le chemin de l'executable
Bonjour à tous !
j'utilise une base Sqlite qui doit se trouver dans le chemin de l'executable.
Je veux en effet être sur qu'au démarrage le fichier soit ouvert sur le chemin de l'executable.
Comment connaitre la chemin de l'executable ? Y a t il une variable ou une constante, ou encore une fonction pour ça ?
Je veux en effet afficher cette information en bas dans une statusbar
merci d'avance !!
Phil
j'utilise une base Sqlite qui doit se trouver dans le chemin de l'executable.
Je veux en effet être sur qu'au démarrage le fichier soit ouvert sur le chemin de l'executable.
Comment connaitre la chemin de l'executable ? Y a t il une variable ou une constante, ou encore une fonction pour ça ?
Je veux en effet afficher cette information en bas dans une statusbar
merci d'avance !!
Phil
Philippe GEORGES
"La simplicité est la sophistication suprême" (De Vinci)
assistance informatique, création de logiciels
"La simplicité est la sophistication suprême" (De Vinci)
assistance informatique, création de logiciels
Re: Connaitre le chemin de l'executable
Peut etre "GetCurrentDirectory()"
tu as ca dans l'aide de purebasic
a bientot
tu as ca dans l'aide de purebasic
a bientot
-
- Messages : 4312
- Inscription : mer. 28/janv./2004 20:58
- Localisation : Clermont ferrand OU Olsztyn
- Contact :
Re: Connaitre le chemin de l'executable
comme cela, tu forces en dossier de travail le dossier contenant l'exe
Par contre, quand tu compiles, n'oublie pas de cocher dans les options de compilation "Executable dans le répertoire du code source" (ou un truc du genre)
Code : Tout sélectionner
SetCurrentDirectory(GetPathPart(ProgramFilename()))
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
- falsam
- Messages : 7324
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Connaitre le chemin de l'executable
Effectivement GetCurrentDirectory() renvoie le chemin du répertoire courant de l'application.
Code : Tout sélectionner
;Exemple
If OpenDatabase(#Database, GetCurrentDirectory()+"/contact.db3", "", "", #PB_Database_SQLite)
....
....
EndIf
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
-
- Messages : 4312
- Inscription : mer. 28/janv./2004 20:58
- Localisation : Clermont ferrand OU Olsztyn
- Contact :
Re: Connaitre le chemin de l'executable
GetcurrentDirectory() renvoie le dossier de travail. Ce n'est pas forcément le dossier du programme. On peut changer le dossier de travail dans un raccourci.
GetPathPart(ProgramFilename()) te donne à coup sur le dossier de l'exécutable, même si le dossier de travail est modifié.
Pour information, pour ouvrir un fichier a coté de l'exe, il suffit de faire Openfile(0, "Fichier a coté de l'exe") par exemple. Pas besoin d'indiquer le chemin complet.
Exemple : Si j'ai
C:\Programme\Mon prog.exe
C:\Programme\Bidule.txt
C:\Programme\Dossier\Truc.txt
Pour ouvrir Bidule.txt, c'est Openfile(0, "Bidule.txt")
Pour ouvrir Truc.txt, c'est Openfile(0, "Dossier\Truc.txt")
et donc je renvoie vers mon message précédent qui t'indique comment forcer le dossier de travail à la valeur du dossier du programme.
++
GetPathPart(ProgramFilename()) te donne à coup sur le dossier de l'exécutable, même si le dossier de travail est modifié.
Pour information, pour ouvrir un fichier a coté de l'exe, il suffit de faire Openfile(0, "Fichier a coté de l'exe") par exemple. Pas besoin d'indiquer le chemin complet.
Exemple : Si j'ai
C:\Programme\Mon prog.exe
C:\Programme\Bidule.txt
C:\Programme\Dossier\Truc.txt
Pour ouvrir Bidule.txt, c'est Openfile(0, "Bidule.txt")
Pour ouvrir Truc.txt, c'est Openfile(0, "Dossier\Truc.txt")
et donc je renvoie vers mon message précédent qui t'indique comment forcer le dossier de travail à la valeur du dossier du programme.
++
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Re: Connaitre le chemin de l'executable
sujet déplacé !
il n'avait rien a faire dans le forum d'information et Tuto !!
lorsqu'on a une question sur le langage , il est coutume d'utiliser le forum "Débutants"
il n'y a rien de péjoratif la dedans ...
Merci
il n'avait rien a faire dans le forum d'information et Tuto !!
lorsqu'on a une question sur le langage , il est coutume d'utiliser le forum "Débutants"
il n'y a rien de péjoratif la dedans ...
Merci
- falsam
- Messages : 7324
- Inscription : dim. 22/août/2010 15:24
- Localisation : IDF (Yvelines)
- Contact :
Re: Connaitre le chemin de l'executable
je suis d'accord avec toi mais dans ce cas précis, Phil souhaitait que la base sqlite soit ouvert dans le même dossier (path ou chemin comme vous voulez) que l’exécutable.Le Soldat Inconnu a écrit :GetcurrentDirectory() renvoie le dossier de travail. Ce n'est pas forcément le dossier du programme. On peut changer le dossier de travail dans un raccourci.
L'aide spécifie que GetCurrentDirectory() Renvoie le chemin du répertoire courant de l'application. Tous les accès aux fichiers sont relatifs à ce répertoire quand un chemin absolu n'est pas spécifié. J'ai donc pensé que ma réponse était adaptée à la question posée.Philippe_GEORGES a écrit :j'utilise une base Sqlite qui doit se trouver dans le chemin de l'executable.
Je veux en effet être sur qu'au démarrage le fichier soit ouvert sur le chemin de l'executable.
Coluche a écrit :Technocrates, c'est les mecs que, quand tu leur poses une question, une fois qu'ils ont fini de répondre, tu comprends plus la question que t'as posée.
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Re: Connaitre le chemin de l'executable
Dans ce cas pas de soucis falsam, Le Soldat Inconnu donnait juste une info supplémentaire 
Dans les 2 cas ça fonctionnera.

Dans les 2 cas ça fonctionnera.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Re: Connaitre le chemin de l'executable
@Philippe_GEORGES
tu es de la meme famille que le serial killer ?
(je suis deja dehors ....)
tu es de la meme famille que le serial killer ?

(je suis deja dehors ....)
Re: Connaitre le chemin de l'executable
ouarf ouarf, c'est gras mais tu m'as fait marrerDobro a écrit :@Philippe_GEORGES
tu es de la meme famille que le serial killer ?![]()
(je suis deja dehors ....)

~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels