cs_gedeon44
Messages postés6Date d'inscriptionvendredi 27 janvier 2006StatutMembreDernière intervention 7 juillet 2006
-
7 juil. 2006 à 12:18
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 2013
-
10 juil. 2006 à 22:12
Bonjour,
J'utilise actuellement dans un programme C# la bibliothèque ICSharpCode.SharpZipLib.Zip pour compresser et décompresser un ensemble de fichiers.
Je rencontre un problème lors de la décompression de certains fichiers EXE.
Le message affiché : Size mismatch: 579019;600056 <-> 579019;600053.
J'ignore d'où cela peut provenir.
Si vous avez une solution au problème...
Merci d'avance.
Ci-dessous une partie du code source.
*********
...
try {
// Definition du repertoire d'extraction
Directory.SetCurrentDirectory(SousRepertoireTravail);
ZipInputStream ZipIn = new ZipInputStream(File.OpenRead(args[0]));
ZipEntry entry;
while ((entry = ZipIn.GetNextEntry()) != null)
{
if(entry.IsDirectory) continue;
string directoryName = Path.GetDirectoryName(entry.ToString());
// Creation du repertoire s'il n'existe pas
if(directoryName!="")
if (!Directory.Exists(directoryName))
Directory.CreateDirectory(directoryName);
// Creation du fichier à extraire
FileStream fs = File.Create(entry.ToString(),2048);
byte[] data = new byte[2048];
int size;
while ((size = ZipIn.Read(data, 0, data.Length))>0)
fs.Write(data, 0, size);
fs.Flush();
fs.Close();
}
ZipIn.Close();
}
catch (Exception e)
{
throw new Exception(NOM_CLASSE + " Echec de decompression de l'archive. Exception : " + e.Message);
}
...
**********
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 10 juil. 2006 à 22:12
Salut,
Bon en fait c'est assez dur de répondre à cette quesion, car le contenu de la dll n'est pas connu de tout le monde (aucune idée comment elle fonctionne!). Je me demande si tu ferais pas mieux de poser ta question sur un forum dedié à cette dll (doit bien y'en avoir un sur le site de l'éditeur, non?)
Autres infos : si tu travailles avec le framework v2, tu peux utiliser les classes présentent dans le namespace System.IO.Compression.