Chemin et accents

Signaler
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
-
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
-
Salut à tous,

J'ai un programme dans lequel je doit accèder à divers fichiers propre à ce programme. Ce programme pouvant etre installé n'importe où sur le disque, les fichiers étant toujours installés dans le même dossier que l'exe, j'utilise les fonctions Application.ExecutablePath et ChangeExt pour accèder à mes fichiers.

Il se trouve qu'un de mes clients utilisateur de ce programme a eu la très bonne idée d'installer ce programme dans une arborescence dont certains dossiers comportent des lettres accentuées.

Et ben, manque de chance, Application.ExecutablePath ne me retourne pas les caractères accentués, il me les remplace par ce cher petit caractère fantome, j'ai nommé le carré blanc. Et évidemment je ne retrouve pas mes fichiers

Comment faire pour dire à cette fonction de me retourner correctement les caractères accentués ?????? Certainement une histoire de culture ou d'encoding mais je trouve pas.

PS : Il est évidement inpensable de renommer les dossiers ou même d'installer le soft ailleurs, sans quoi je ne poserais pas la question.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php

6 réponses

Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
26
 Bonjour Casy,

As-tu essayé l'équivalent (vb->vb.Net) de la propriété ShortPath ?

jean-marc
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
26
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
A voir et à étudier.

Sur mon PC les chemins courts ne marchent pas parce qu'ils ont été désactivés, mais c'est peut-etre une solution.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
81
Date d'inscription
jeudi 7 août 2003
Statut
Membre
Dernière intervention
7 novembre 2007

coucou casy, tu peux peut-être essayer AppDomain.CurrentDomain.BaseDirectory?

ou bien aussi de convertir avec

System.Text.Encoding.Convert


A+ :)
Messages postés
1241
Date d'inscription
mardi 10 octobre 2006
Statut
Membre
Dernière intervention
27 août 2013
5
Bonjour,

Je viens de faire un test sur mon pc au travail et en affichant dans un messagebox le retour de la fonction application.executablepath, je vois bien les caractères accentués des dossiers..
Sinon essayes peut-être :


My.Application.Info.DirectoryPath
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
En réalité après quelques essais, je me suis appercu que seule la methode ExecutePath de la classe Application ne prennait pas les accents. Les autres méthodes de la classe relatives aux chemins marchent correctement.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php