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 :

Fichier de config


Sujet :

Windows Forms

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Points : 65
    Points
    65
    Par défaut Fichier de config
    Bonjour a tous,

    voila apres des recherches sur le forum et google aussi ... pas de reponses

    j'arrive a lire les sections de mon fichier mais écrire pas moyen ... quelqu'un pourrait me donner une piste ?

    Par exemple avec le fichier ci-dessous comment modifier la valeur de C dans D/A ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <configSections>
            <sectionGroup name="D">
          <section name="A" type="System.Configuration.NameValueSectionHandler" />
        </sectionGroup>
      </configSections>
        <D>
        <A>
          <add key="C" value="1" />
        </A>
          </D>
    </configuration>
    Merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Points : 65
    Points
    65
    Par défaut
    Dsl de faire le newbie noob et de faire le relou mais si quelqu'un aurait deja fait ca s'il pouvait me donner un petit coup de pouce ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Points : 65
    Points
    65
    Par défaut
    jai un probleme a la lecture du fichier depuis que j'ai realiser une publication je sais pas si ca vient de ca ...

    en tou cas l'erreur que j'ai c'est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    {System.Security.SecurityException: La demande de ConfigurationPermission a échoué lors de la tentative d'accès à la section de configuration 'IP/BD'. Pour autoriser tous les appelants à accéder aux données de cette section, affectez à l'attribut de section 'requirePermission' la valeur 'false' dans le fichier de configuration où cette section est déclarée. ---> System.Security.SecurityException: Échec de la demande d'autorisation de type 'System.Configuration.ConfigurationPermission, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.
       à System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet)
       à System.Security.CodeAccessPermission.Demand()
       à System.Configuration.BaseConfigurationRecord.CheckPermissionAllowed(String configKey, Boolean requirePermission, Boolean isTrusted
    Là j'ai vraiment besoin d'aide svp

  4. #4
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 142
    Points : 93
    Points
    93
    Par défaut
    Bonjour,

    La réponse est dans l'erreur je pense

    il faut juste ajouter un attribut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    'requirePermission' la valeur 'false' dans le fichier de configuration où cette section est déclarée. --->
    a ta place je ferai ca en premier lieu

    a+

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Points : 65
    Points
    65
    Par défaut
    J'avais bien compris ca aussi mais je ne vois pas ou le mettre

  6. #6
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 142
    Points : 93
    Points
    93
    Par défaut
    Probablement dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <sectionGroup name="D" requirePermission ="false">

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Points : 65
    Points
    65
    Par défaut
    Merci c'est bon ca marche.
    Tu aurais une explication à mee donner ? ça serait vraiment cool

    Et par hasard ...

    Tu sais peut etre comment modifier la valeur de "C" dans "D/A" ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <configSections>
            <sectionGroup name="D">
          <section name="A" type="System.Configuration.NameValueSectionHandler" />
        </sectionGroup>
      </configSections>
        <D>
        <A>
          <add key="C" value="1" />
        </A>
          </D>
    </configuration>
    Merci

  8. #8
    Membre averti Avatar de roster
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 397
    Points : 426
    Points
    426
    Par défaut
    Citation Envoyé par Panaméen Voir le message
    Merci c'est bon ca marche.
    Tu aurais une explication à mee donner ? ça serait vraiment cool

    Et par hasard ...

    Tu sais peut etre comment modifier la valeur de "C" dans "D/A" ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <configSections>
            <sectionGroup name="D">
          <section name="A" type="System.Configuration.NameValueSectionHandler" />
        </sectionGroup>
      </configSections>
        <D>
        <A>
          <add key="C" value="1" />
        </A>
          </D>
    </configuration>
    Merci
    Utilises Linq to Xml avec l'import System.Xml.Linq.
    Tout est là:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
             XmlDocument docXML = new XmlDocument();
     docXML.Load(Application.StartupPath + @"\nomFichier.xml");
     //On récupere le flux XML depuis le fichier XML
     XElement docXMLFromLinq = XElement.Load(Application.StartupPath + @"\nomFichier.xml");
     XmlNodeList nodes = docXML.SelectNodes("/racine/noeud_perso");
     //Utilisation de Linq to XML
     //le fichier XML
     
     int iMaxNodeId = 0;
     //docXMLFromLinq.Element("")
     foreach (var id in docXMLFromLinq.Elements("noeud_perso"))
     {
     int iIdNode = System.Convert.ToInt32((string)id.Attribute("noeud_persoId"));
     iMaxNodeId = Math.Max(iMaxNodeId, iIdNode);
     }
     
     //Le nouveau noeud
     XElement oNewNode =
     new XElement("noeud_perso",
     new XAttribute("noeud_persoId", iMaxNodeId+1),
     new XElement("nom_noeud_perso", "Mon_nom_toto");
     //sauvegarde du fichier XML
     docXMLFromLinq.Add(oNewNode);
     docXMLFromLinq.Save(Application.StartupPath + @"\nomFichier.xml");
     //attention Nom_de_projet : remplacer par le nom de votre projet
     String sDestinationSauvegarde = Nom_de_votre_projet.Properties.Settings.Default.ModeleTypesDeFichier;
     
     //Rien de plus facile que de supprimer un noeud :
     
     XmlDocument docXML = new XmlDocument();
     docXML.Load(Application.StartupPath + @"\nomFichier.xml");
     XmlNodeList nodes = docXML.SelectNodes("/racine_perso/nom_noeud_perso");
     foreach (XmlNode node in nodes)
     {
     foreach (XmlNode oNodeEnfant in node.ChildNodes)
     {
     if (oNodeEnfant.Name == "nomtypelong" &&
     NodeEnfant.FirstChild.InnerText == oItem.ToString())
     {
     oNodeEnfant.ParentNode.ParentNode.RemoveChild(node);
     docXML.Save(Application.StartupPath + "\nomFichier.xml");
     }
     }
     }

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Points : 65
    Points
    65
    Par défaut
    Un peu long et compliqué je trouve
    Ya vraiment pas plus simple ? J'ai pas trouvé comment faire un Set Section ou un truc du genre avec la classe ConfigurationManager ...

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Points : 65
    Points
    65
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    try
                {
                               string sTemp = ""; // on initialise la chaine 
     
                Configuration conf = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
     
     
                sTemp = "D/A";
     
                m_Section[sTemp] = "xxxxx";
     
     
                m_Fichier.Save();     
     
                }
                catch (Exception ex)
                {
                }
    j'ai testé ca mais la collection est en lecture seule ...

    estce que j'utilise la bonne methode ?

Discussions similaires

  1. [jdbc] fichier de config
    Par calimero82 dans le forum JDBC
    Réponses: 14
    Dernier message: 21/06/2005, 13h48
  2. [Erreur]impossible de trouver le fichier de config du moteur
    Par julietteste dans le forum Bases de données
    Réponses: 5
    Dernier message: 10/05/2005, 18h34
  3. [C#] Section appSettings du fichier Web.config
    Par pbo dans le forum ASP.NET
    Réponses: 2
    Dernier message: 01/02/2005, 10h12
  4. [struts] utilisation de plusieurs fichiers de config
    Par Boosters dans le forum Struts 1
    Réponses: 4
    Dernier message: 25/03/2004, 10h04
  5. fichier de config: refuse tcpip_socket=true.
    Par phil25 dans le forum Installation
    Réponses: 1
    Dernier message: 04/01/2004, 15h55

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