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 :

Sauvegarder une dll incorpore


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de Seth77
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2005
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 448
    Par défaut Sauvegarder une dll incorpore
    Salut

    voici mon code :

    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
     
    Stream stream = null;
                StreamWriter streaWriter = null;
     
                try
                {
                    String path = Path.GetDirectoryName(Application.ExecutablePath);
                    path = Path.Combine(path, "MediaInfo.dll");
                    if (File.Exists(path) == false)
                    {
                        stream = this.GetType().Assembly.GetManifestResourceStream("mI.Files.MediaInfo.dll");
                        streaWriter = new StreamWriter(path);
     
                        streaWriter.Write(stream);
                        //streaWriter.Flush();
                    }
                }
                catch(Exception)
                {
                    return false;
                }
                finally
                {
                    if (stream != null)
                    {
                        stream.Close();
                    }
                    if (streaWriter != null)
                    {
                        streaWriter.Close();
                    }
                }
    pourtant le fichier dll ne correspond pas l original.

  2. #2
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2007
    Messages
    677
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2007
    Messages : 677
    Par défaut
    Essaie quelque chose dans ce genre là (C'est surement un soucis d'encodage de ton flux) :

    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
                Stream stream = null;
     
                try
                {
                    String path = Path.GetDirectoryName(Application.ExecutablePath);
                    path = Path.Combine(path, "MediaInfo.dll");
                    if (File.Exists(path) == false)
                    {
                        stream = this.GetType().Assembly.GetManifestResourceStream("mI.Files.MediaInfo.dll");
     
                        int length = 256;
                        byte[] buffer = new byte[length];
     
                        using (FileStream writeStream = new FileStream(path,
                        FileMode.Create, FileAccess.Write))
                        {
                            int bytesRead = _stream.Read(buffer, 0, length);
     
                            while (bytesRead > 0)
                            {
                                writeStream.Write(buffer, 0, bytesRead);
     
                                bytesRead = _stream.Read(buffer, 0, length);
                            }
                        }
                    }
                }
                catch (Exception)
                {
                    return false;
                }
                finally
                {
                    if (stream != null)
                    {
                        stream.Close();
                    }
                }

  3. #3
    Membre éprouvé Avatar de Seth77
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2005
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 448
    Par défaut
    Merci ! marche mieux !!!

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 28/06/2007, 14h51
  2. Sauvegarder une surface dans un fichier
    Par Freakazoid dans le forum DirectX
    Réponses: 6
    Dernier message: 18/08/2002, 16h23
  3. Utilisation d'une dll écrite en delphi 5 dans VB6
    Par Jean-Louis dans le forum Langage
    Réponses: 4
    Dernier message: 05/08/2002, 10h19
  4. Declarer une dll Delphi ?
    Par DelphiCool dans le forum C++Builder
    Réponses: 2
    Dernier message: 26/07/2002, 11h07
  5. Equivalent à ExeName pour une DLL
    Par Smortex dans le forum Langage
    Réponses: 7
    Dernier message: 16/07/2002, 22h07

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