IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Path dossier Properties.Settings.Default


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 23
    Points : 22
    Points
    22
    Par défaut Path dossier Properties.Settings.Default
    Bonjour,

    mon application winforms utilise des images se trouvant dans un dossier.
    Le path de ce dossier est précisé dans: Properties.Settings.Default.Dossier_images

    Je veux vérifier au démarrage que ce dossier existe et pouvoir aller le chercher sinon.

    J'ai fais cette méthode mais ça ne marche pas, l'application ne trouve pas le dossier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
            private void VerifierDossiers()
            {
                String path = Properties.Settings.Default.Dossier_images;
     
                if (!Directory.Exists(path))
                { 
                    if (dossierImage_folderBrowserDialog.ShowDialog() == DialogResult.OK)
                    {
                        Properties.Settings.Default.Dossier_images = dossierImage_folderBrowserDialog.SelectedPath;
                        Properties.Settings.Default.Save();
                    }
                }
            }
    Merci de votre aide

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Comment ça, "ne trouve pas le dossier" ? il se passe quoi exactement ?
    C'est un chemin absolu ou relatif ?

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 23
    Points : 22
    Points
    22
    Par défaut
    Mon dossier se nomme "images" et Properties.Settings.Default.Dossier_images = "d:\monAppWinforms\images".
    Si le dossier est présent il n'y a pas de problèmes. Pour tester, j'ai renommé ce dossier en images2. Mon code détecte bien que le dossier n'existe pas, me propose donc d'aller chercher ce dossier. Je sélectionne donc ce dossier images2, et ma propriété Properties.Settings.Default.Dossier_images passe bien à "c:\monAppWinforms\images2". Ensuite, lorsque j'utilise ces images dans mon code en faisant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Bitmap bmp = new Bitmap(Properties.Settings.Default.Dossier_images + "texture.bmp");
    l'application plante en me disant
    Le paramètre n'est pas valide.
    Merci

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    C'est parce qu'il te manque un backslash entre le répertoire et le nom du fichier. Le paramètre que tu passes au constructeur de Bitmap est en fait "d:\monAppWinforms\imagestexture.bmp"

    Pour construire un chemin d'accès sans te préoccuper de savoir si le répertoire a déjà le backslash final, utilise la méthode Path.Combine (dans System.IO). D'autre part, il est recommandé d'utiliser Image.FromFile plutôt que d'instancier directement la classe Bitmap. Tu as rarement besoin de savoir de quel type d'image concret il s'agit, donc il vaut mieux utiliser la classe de base Image.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    string path = Path.Combine(Properties.Settings.Default.Dossier_images, "texture.bmp");
    Image img = Image.FromFile(path);

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 23
    Points : 22
    Points
    22
    Par défaut
    Je te remercie c'était ça. Cependant vu que j'utilise aussi des images étant dans des sous dossiers (en dur dans le code) j'ai rajouté le backslash directement à la propriété.
    Pour ce qui est de la classe Image, merci pour l'info je vais faire les modifs nécessaires.

    bonne continuation merci

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    N'oublie pas de marquer le sujet comme
    (bouton en bas de la page)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Path dossier spécial+instanciation
    Par kakikaki dans le forum Plateformes (Java EE, Jakarta EE, Spring) et Serveurs
    Réponses: 1
    Dernier message: 11/12/2008, 17h11
  2. Acces à app.Properties.Settings
    Par olibara dans le forum C#
    Réponses: 4
    Dernier message: 28/10/2008, 20h52
  3. on delete set default
    Par DonKnacki dans le forum Requêtes
    Réponses: 4
    Dernier message: 24/01/2008, 21h51
  4. Comment modifier Properties.Settings ?
    Par Sunsawe dans le forum C#
    Réponses: 3
    Dernier message: 02/08/2007, 14h37
  5. Recuperer path dossier
    Par Drudwyn dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 16/02/2006, 14h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo