Stockage d'un chemin de fichier

Résolu
whitelegend Messages postés 156 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 2 mars 2009 - 19 févr. 2009 à 16:27
whitelegend Messages postés 156 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 2 mars 2009 - 21 févr. 2009 à 08:43
Salut à tous,

J'ai un soucis avec mon code qui me renvoie une erreur que je n'arrive pas à résoudre.

J'ai le code suivant :

        FondMain =  LireNoeudEnfantXML(Path,  "Option" , "FondMain")
        'AdresseImg
        AdresseImg  = LireNoeudEnfantXML(Path, "Option""AdresseImg")
         If  FondMain    ""  <gras>Then Me.BackgroundImage </gras> Image.FromFile(AdresseImg)

Où les fonction LireNoeud..... renvoie une valeur de type string correspondant au texte contenu par le noeud spécifié dans un fichier XML.

J'ai une erreur sur la dernière ligne : "Caractères non conformes dans le chemin d'accès."

La valeur stockée dans AdresseImg est excatement en respectant les quotes:

"Application.StartupPath & "\Planetes.jpg""

Voila ce qu'il y a dans mon fichier XML :

Application.StartupPath &amp; "\Planetes.jpg"

Je comprends bien que mon erreur est du aux quote ... mais je ne sais pas comment les supprimer pour envoyer un paramètre correct à backgroundimage... ou comment stocker un chemin de fichier ....

Avez-vous une idée svp ?

LC
__________________________________________________________________________
Pensez à accepter les réponses qui vous servent  

3 réponses

radcur Messages postés 282 Date d'inscription lundi 29 septembre 2003 Statut Membre Dernière intervention 15 août 2012 2
20 févr. 2009 à 03:07
salut

ca ne peut pas fonctionner de la facon dont tu le fais.

Application.startuppath contient un chemin de l'application sous format "C:\test" par exemple.

de la facon dont tu l'écrit, c'est tout une chaine de caractères "Application.StartupPath &amp; "\Planetes.jpg"", donc je comprend pourquoi ca accroche.

Petite question: tu créé ton fichier XML manuellement ou par code ?
Si c'est par code
2 options s'offres à toi1- dans , tu ne met que le nom du fichier et dans ton code, tu mets  If FondMain   ""   Then Me .BackgroundImage   Image.FromFile(Application.StartupPath & "" & AdresseImg)
2- dans le noeud , tu mets le chemin et le nom de ton fichier Application.StartupPath & "" & "le_nom_de_ton_fichier"  .... Application.StartupPath ne doit pas être entre guillemet.  Le noeud contiendra, exemple, c:\test\mon_image.jpg
3
whitelegend Messages postés 156 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 2 mars 2009
21 févr. 2009 à 08:43
Re,

Bon ne trouvant pas la solution à mon problème j'ai choisi d'opter pour une solution de réserve que à laquelle j'avais déjà et que tu as cité d'ailleur.
1- dans , tu ne met que le nom du fichier et dans ton code, tu mets  If FondMain   ""   Then Me .BackgroundImage   Image.FromFile(Application.StartupPath & "" & AdresseImg)

J'ai par contre ajouté une ligne de code qui copie le fichier .jpg sélectionné par l'utilisateur et en colle un copie dans le répertoire de démarrage de mon appli.... c'est pas très joli mais bon ca fonctionne très bien.

Merci encore, et je te rajoute une réponse acceptée car tu as aussi cité la solution définitive 

LC 

__________________________________________________________________________
Pensez à accepter les réponses qui vous servent  
3
whitelegend Messages postés 156 Date d'inscription vendredi 13 janvier 2006 Statut Membre Dernière intervention 2 mars 2009
20 févr. 2009 à 07:56
Salut,

Merci de te pencher sur mon problème.

Comme tu peux le voir c'est la récupération du texte de mon nœud qui ajoute des quote au début et à la fin car je stock ca sous une variable de type string

Ligne de mon fichier XML :  Application.StartupPath &amp; "\Planetes.jpg"

il n'y a donc pas de quote dans cette ligne de mon fichier et la commande:

Me.BackGrounImage = Image.FromFile(Application.StartupPath & "\Planetes.jpg")  fonctionne.

Le fichier est créé manuellement la première mais mis a jour automatiquement si l'utilisateur modifie cette image de fond de ma form principale, ce chemin pourra donc devenir D:\blabla\blabla.jpg ou C:\..... et je pense que ma facon facon de faire pourra fonctionner comme ca mais dans le cas ou c'est l'image par défaut qui est utilisée... rien ne va plus...

As tu une idée pour résoudre ce problème ?

LC

__________________________________________________________________________
Pensez à accepter les réponses qui vous servent  
0
Rejoignez-nous