Récupération de la localisation du programme

Tiatia63 Messages postés 60 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 décembre 2010 - 6 juil. 2007 à 11:22
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 - 9 juil. 2007 à 22:51
Bonjour,

Dans mon programme j'ouvre des fichiers qui pour l'instant sur mon pc son à un endroit possible.
Mais par la suite ce programme sera installé sur plusieurs ordinateur et les fichiers peuvent être mis n'importe où.
Alors je voudrais trouver où ils sont!
Est ce que c'est possible quand on lance l'application de trouver ou elle se trouve et de récupérer le chemin d'acces au dossier contenant donc le programme et tous les fichiers associés?

Merci!

11 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
6 juil. 2007 à 11:28
Salut,

Je ne sais pas si en VBA, il y a cela, mais regarde du côté de : App.Path

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
6 juil. 2007 à 11:46
Bonjour à tous les deux.
Je crois (mais je ne connais pas VBA) que sous VBA c'est Application.Path
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
6 juil. 2007 à 11:49
En VBA (Excel), ce serait ThisWorkbook.Path
qui donne le chemin de l'application en cours

Si les autres fichiers ne sont pas au même endroit, il faudra peut-être penser à utiliser un contrôle Common Dialog ou la méthode Application.GetOpenfilename et sauvegarder le ou les chemins dans un fichier ou la base de registre...

MPi
0
Satanas09 Messages postés 18 Date d'inscription samedi 2 juin 2007 Statut Membre Dernière intervention 22 août 2008
7 juil. 2007 à 00:00
et sous Word c'est

ThisDocument.Path

Satanas09 ..... Sapristi, saprista, souris grise et face de rat
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Tiatia63 Messages postés 60 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 décembre 2010
9 juil. 2007 à 10:50
Pff! je désespère! C'est le serpent qui se mort la queue!!
J'ai utiliser filetoopen mais ça va pas.
Comment savoir ou on est?
Je peux savoir ou on est d'accord. mais après comment enregistrer le chemin d'acces dans un fichier ou l'on ne sait pas ou il est!
J'ai regarder avec fileToOpen et j'ai fait ça
Dim ld() As String
fileToOpen = Application _
    .GetOpenFilename("Text Files (*.txt), fileToOpen.txt")
'Pour creer le fichier texte
Set FSys = CreateObject("Scripting.FileSystemObject")
Set CheminAcces = FSys.CreateTextFile("D:\....\Chemin d'accès.txt")
With CheminAcces 'Pour écrire dans le fichier texte
.writeLine fileToOpen 'Mettre write pour ne pas sauter à la ligne



End With

Mais je ne peux pas enregistrer la "réponse" a filetoopen dans un fichier qui se trouve dans le répertoire dont je suis en train de chercher le chemin!
Bon j'essaie de gratter en attendant votre réponse...
Merci





 
0
Tiatia63 Messages postés 60 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 décembre 2010
9 juil. 2007 à 11:03
Aah! Ca a l'air de marcher! Voilà ce que j'ai fait:
Dim ld() As String
fileToOpen = Application _
    .GetOpenFilename("Text Files (*.txt), fileToOpen.txt")
'Pour creer le fichier texte
Set FSys = CreateObject("Scripting.FileSystemObject")
'Set CheminAcces = FSys.CreateTextFile("D:\...\Chemin d'accès.txt")
Set CheminAcces = FSys.CreateTextFile(fileToOpen)
With CheminAcces 'Pour écrire dans le fichier texte
.writeLine fileToOpen 'Mettre write pour ne pas sauter à la ligne


End With

Alors? Ca vous semble bien?
Merci de votre aide!
0
Tiatia63 Messages postés 60 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 décembre 2010
9 juil. 2007 à 11:13
Et ben non ça va pas!
Pff! je me réponds toute seule enfin!
Non il faut juste que je récupère le nom du dossier.
Pour par la suite récupérer ce nom(qui peut changer en fonction de là ou on installe le programme) pour ensuite quand je fais référence a un fichier, juste mettre dans le programme par exemple "cheminacces\fichier.txt" avec cheminacces=le mon du dossier contenant tous les fichiers.
Faut peut etre plutot utiliser autre chose?
Est que vous pouvez m'aider
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
9 juil. 2007 à 11:31
Tu n'as pas vraiment expliqué sur quoi tu travailles. Tu as eu différentes méthodes de retracer le chemin de ton application
App.Path                      - VB6
ThisWorkbook.Path    - Excel
ThisDocument.Path     - Word

Ça équivaut à ton cheminacces, en principe

Pour écrire dans un fichier, tu n'as pas besoin d'utilise le FileSystemObject
Un simple Open MonFichier For Output as #1 suffit avec l'instruction Print ou Write
suivi d'un Close lorsque terminé

MPi
0
Tiatia63 Messages postés 60 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 décembre 2010
9 juil. 2007 à 11:40
je suis sous visual basic 6.3.
Mon programme ne travaillera pas sous excel.
Donc j'essaie qqch avec app.path...
0
Tiatia63 Messages postés 60 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 23 décembre 2010
9 juil. 2007 à 12:16
Ok, j'ai compris...
Merci beaucoup!
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
9 juil. 2007 à 22:51
VB 6.3 n'est pas VB6
C'est du VBA sous une application Office quelconque
Donc, App.Path ne devrait pas fonctionner dans ton cas.

MPi
0
Rejoignez-nous