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

C# Discussion :

Integrer des fichiers ressources dans un .exe


Sujet :

C#

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Points : 240
    Points
    240
    Par défaut Integrer des fichiers ressources dans un .exe
    Bonjour,

    J'ai fait un projet en mode console. J'ai des fichiers de paramètres, aujourd'hui je fournis ça:
    soft.exe
    data.xml
    data2.xml

    soft.exe va utiliser ce qui ce trouve dans data et data2. Ce sont des fichiers qui ne bougent pas fournis par moi pas par l'utilisateur.

    J'aurai voulu inclure ces 2 fichiers dans mon exe en ressources, mais apparemment c'est pas possible, je cherche sans succès, pourriez vous me confirmer si c'est possible ou pas?

    Sinon, quel est la meilleure méthode? Intégrer ces fichiers dans une dll et fournir:
    soft.exe
    soft.dll

    C'est juste pour un confort d'utilisation, potentiellement je vais me retrouver avec x fichiers data, je ne veux pas les trimballer comme ça.

    Merci

  2. #2
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 154
    Points : 7 403
    Points
    7 403
    Billets dans le blog
    1
    Par défaut
    Euh...

    Tu crées un fichier ressource.
    Et tu ajoutes à ce fichier ressource... tes deux fichiers XML !

    Je vois pas trop la difficulté en fait.

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(Resource1.XMLFile1);
                foreach (XmlNode node in doc.SelectNodes("/root/branche"))
                {
                    Console.WriteLine(node.Attributes["id"].Value);
                }
                doc.LoadXml(Resource1.XMLFile2);
                foreach (XmlNode node in doc.SelectNodes("/root/branche"))
                {
                    Console.WriteLine(node.Attributes["id"].Value);
                }

    Et pour la ressource... bah une fois la ressource créée, tu l'ouvres dans VS, et drag&drop des deux fichiers dedans... rien de plus !

    Ah... Et si tu veux absolument une DLL séparée, alors tu crée un second projet dans ta solution, avec la ressource dedans.
    On ne jouit bien que de ce qu’on partage.

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    646
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 646
    Points : 240
    Points
    240
    Par défaut
    Humm, comment dire
    Effectivement !! J'ai un peu honte là!!

    Ben je sais pas, pourtant j'ai chercher, ça doit être un jour sans...

    Au cas où d'autre se serait posé la même question, je complète un peu:
    - rajouter le fichier ressources
    - mettre dedans les fichiers souhaités, rajouter ces fichiers au projet et les mettre en ressources embedded.
    - pour les utiliser il faut les récupérer sous forme de stream (pas réussi chez moi avec ta méthode StringBuilder), il existe différente méthode suivant le type de fichier (.txt, image, xml) et ce que l'on veut en faire aussi bien sûr. Dans mon cas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
                System.Reflection.Assembly a = System.Reflection.Assembly.GetExecutingAssembly();
                xmlDoc.Load(a.GetManifestResourceStream("namespace.data.xml");
    Je pense n'avoir rien oublié.

    Merci StringBuilder!!

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 01/07/2012, 12h50
  2. problème de "load" des fichiers textes dans un exe
    Par guefrachi dans le forum MATLAB
    Réponses: 8
    Dernier message: 13/10/2010, 15h21
  3. [NASM] Utiliser des fichiers ressources
    Par trax44 dans le forum Assembleur
    Réponses: 8
    Dernier message: 26/09/2004, 18h42
  4. [MFC] Ajout des fichiers récents dans un menu
    Par Choupinou dans le forum MFC
    Réponses: 3
    Dernier message: 20/08/2004, 16h47
  5. Réponses: 10
    Dernier message: 27/08/2002, 23h24

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