Stockage d'un chemin de fichier

[Résolu]
Signaler
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009
-
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009
-
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

Messages postés
282
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
15 août 2012
2
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
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

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  
Messages postés
156
Date d'inscription
vendredi 13 janvier 2006
Statut
Membre
Dernière intervention
2 mars 2009

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