Marneus73
Messages postés344Date d'inscriptionmercredi 24 janvier 2007StatutMembreDernière intervention27 octobre 2008
-
27 août 2007 à 23:20
lolokun
Messages postés1241Date d'inscriptionmardi 10 octobre 2006StatutMembreDernière intervention27 août 2013
-
30 avril 2010 à 17:40
Bonjour à tous
J'ai un petit probleme pas du tout evident à expliquer, mais je vais essayer de faire de mon mieux:
J'ai un dossier A pouvant être placé n'importe où sur l'ordinateur d'un utilisateur (C'est lui qui le met où il veut, MesDocuments, Bureau...) Ce dossier A contient deux dossiers: un B et un C. Le dossier B contient l'executable de mon programme, et le dossier C renferme un document ".rtf". Et j'aurais besoin de connaitre le chemin du fichier ".rtf" pour pouvoir l'ouvrir. Pour que ce soit encore plus facile, je ne connais ni le nom de B, ni celui de C !!!
Est-ce possible ?
Merci d'avance.
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 28 août 2007 à 08:32
Salut,
L'executable connait son chemin avec App.Path (en VB6) et Application.ExecutablePath (si je me souvient bien en .NET, les pros me corrigeront surement)
Tu peux donc facilement déduire le nom de B de A de C et leur emplacement sur le disque.
Marneus73
Messages postés344Date d'inscriptionmercredi 24 janvier 2007StatutMembreDernière intervention27 octobre 2008 28 août 2007 à 08:59
Salut.
Oui, j'utilise cette methode pour connaitre le nom de B, mais celui de C ? ce n'est pas possible ! Il ne renferme aucun executable ! Et n'a rien en commun avec B mis à part A, dont je connais le nom.
PS: Arnal88, regarde le nom du formu sur lequel j'ai posté... Je suis en VB 2005
Molenn
Messages postés797Date d'inscriptionmardi 7 juin 2005StatutMembreDernière intervention23 février 20117 28 août 2007 à 10:43
Et bien, avec App.path, tu as le chemin de ton exécutable du type :
CheminAppli = "C:\Toto\A"
Ce chemin est une chaine de caractères, tu récupères tout ce qui est à gauche du dernier "" (tu as le choix pour ce faire : Split, InStr, InStrRev, Left, Len, etc ...)
Tu obtiens dans le chemin de tes 2 répertoires : CheminRécupéré = "C:\toto"
Te reste plus qu'à ajouter le nom de ton répertoire B (puisque tu l'installes, je suppose qu'il aura toujours le même nom défini) :
CheminFichierRTF = CheminRécupéré & "\B" et le toujours est joué
Molenn
Vous n’avez pas trouvé la réponse que vous recherchez ?
lolokun
Messages postés1241Date d'inscriptionmardi 10 octobre 2006StatutMembreDernière intervention27 août 20137 28 août 2007 à 10:50
Salut,
Molenn : Il est en vb.net ce n'est donc pas app.path mais :
Application.StartupPath pour récupérer le chemin de l'exécutable
.
Application.ExecutablePath récupère le chemin de l'exécutable suivi du nom de l'exe.
lolokun
Messages postés1241Date d'inscriptionmardi 10 octobre 2006StatutMembreDernière intervention27 août 20137 29 août 2007 à 08:51
Re marneus,
avec Application.StartupPath tu connais facilement le nom de ton répertoire B.
Ensuite tu récupère la chaine de caractère qui se trouve à gauche de ton dernier "" et tu récupères comme ça le nom de ton répertoire A.
Si dans ton répertoire A il n'y a que les dossier B et C, il suffit de faire un dir sur ton répertoire A, tu récupèreras les 2 dossiers B et C.
Tu connais deja le nom de B que tu auras sauvegardé dans une variable, tu compares donc le nom des répertoires récupérés et tu en déduis C.
Marneus73
Messages postés344Date d'inscriptionmercredi 24 janvier 2007StatutMembreDernière intervention27 octobre 2008 29 août 2007 à 09:05
Re,
Ok merci bien, j'aime bien votre solution. Mais je ne savais pas que l'on pouvait faire une sorte de soustraction de chaines de caractere !
En fait pour vous aider je vais vous donner l'architecture des dossiers dans A, pour une pièce donnée: le fichier B s'appellera "Systeme[Piece 1]" et C: "Ressources[Piece 1]". Il n'y a donc que le nom entre crochets qui varie, mais ça m'enbete de tous les connaitres car il y a plus de 150 pieces ! Et je n'ai pas envie de faire 150 programmes, je voudrais un truc standard.
PS: Piece signifie piece "Solidworks", mon programme sert d'interface simplifiée pour visionner les pieces, les mises en plan, la nomenclature pour que l'utilisateur d'un clique trouve ce qu'il veut.
cs_labk92
Messages postés12Date d'inscriptiondimanche 16 mars 2003StatutMembreDernière intervention29 juillet 2010 30 avril 2010 à 16:58
Bonjour,
J'ai le même problème que Marneus73 à savoir que j'ai un programme qui peut etre installé n'importe où. J'ai crée un code en vbs qui se trouve dans le répertoire du programme. Et ma question est de savoir comment trouver le chemin du .vbs en code? Autrement dit, existe-t-il un équivalent au app.path de vb6 mais en vbs ?