Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2439 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [Vb.Net] Problème téléchargement + décompression

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Vb.Net] Problème téléchargement + décompression

n°2280621
ind6x
Posté le 02-05-2016 à 18:07:41  profilanswer
 

Bonjour !  :)  
 
Je développe un installeur et j'ai besoin de téléchargé des fichiers (.exe). cepandant en utilisant  
 
Code :
 

Code :
  1. My.Computer.Network.DownloadFile


 
Le ficher se télécharge bien, mais lorsque l'on essai de le lancer, il s'ouvre dans une console et se ferme (alors que c'est une winform !!! )  
J'ai pu remédier à ce probleme en compressant ces fichiers... en .gz
 
J'utilise donc la méthode de Gzip Stream pour les décompresser !  voici mon code :
 
La fonction de décompression :
 
Code :
 

Code :
  1. Public Function decompression(ByVal cheminSource As String, ByVal cheminDestination As String) As Boolean
  2.         Try
  3.             'Lecture du fichier compresse
  4.             Dim monFileStream As New FileStream(cheminSource, FileMode.Open)
  5.             ' Données du fichier placées dans un GZipStream
  6.             Dim monGzipStream As New GZipStream(monFileStream, CompressionMode.Decompress)
  7.             ' Tableau qui va contenir la taille du fichier
  8.             Dim tailleOctets(3) As Byte
  9.             ' Positionnement dans le Stream pour récupérer la taille
  10.             Dim position As Integer = CInt(monFileStream.Length - 4)
  11.             monFileStream.Position = position
  12.             ' Récupération de la taille du fichier
  13.             monFileStream.Read(tailleOctets, 0, 4)
  14.             ' Repositionnement en début du Stream
  15.             monFileStream.Position = 0
  16.             ' Conversion de la taille du fichier en entier
  17.             Dim tailleFichier As Integer = BitConverter.ToInt32(tailleOctets, 0)
  18.             ' Dimesionnement du buffer
  19.             Dim buffer(tailleFichier + 100) As Byte
  20.             ' Offset qui permettra de se repérer dans le Stream
  21.             Dim monOffset As Integer = 0
  22.             While (True)
  23.                 ' Les données sont décompressées et placées dans le buffer
  24.                 Dim decompressionOctets As Integer = monGzipStream.Read(buffer, monOffset, 100)
  25.                 ' Tant qu'il reste des données on continue
  26.                 If (decompressionOctets = 0) Then
  27.                     Exit While
  28.                 End If
  29.                 ' On icrémente l'offset pour ne pas repartir de 0 à chaque fois...
  30.                 monOffset += decompressionOctets
  31.             End While
  32.             ' Création du fichier décompressé
  33.             monFileStream = New FileStream(cheminDestination, FileMode.Create)
  34.             ' Ecriture des données décomrpessées dans le fichier
  35.             monFileStream.Write(buffer, 0, tailleFichier - 1)
  36.             ' Efface les données en mémoire tampon
  37.             monFileStream.Flush()
  38.             ' Fermeture des Streams
  39.             monFileStream.Close()
  40.             monGzipStream.Close()
  41.             Return True
  42.         Catch ex As Exception
  43.             Return False
  44.             MsgBox(ex.Message)
  45.         End Try
  46.     End Function


 
 
Cette fonction est appelée comme suit :
 
Code :  
 
 

Code :
  1. Call decompression(path & "\" & name & ".gz", path & "\" & name & ".exe" )


 
Code :
 

Code :
  1. path & "\" & name & ".gz"


 
 
étant le chemin du fichiers une fois celui ci téléchargé...
 
NB: j'ai essayer de mettre juste path dans le 2eme argument mais meme probleme...
 
Mon probleme :
 
Aucune décompression n'est effectuée !  
 
Et le plus étonnant est que je n'ai aucune erreur en sortie !  
 
 
Merci de votre aide !  :bounce:

mood
Publicité
Posté le 02-05-2016 à 18:07:41  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  [Vb.Net] Problème téléchargement + décompression

 

Sujets relatifs
Problème responsiv adobe MUSEProblème de lenteur Visual Studio.
[C#]Problème de droit d'accès, Outil de recherche[Ada][cybernetic] intégrer le système : approche neurale du problème.
probleme graph vbaprobleme programme arduino shield infrarouge ap.photo canon eos 500d
Problème début WAMP[PHP/Bootstrap] Problème de pièce jointe et d'envoi de données
Masquer lien de téléchargement 
Plus de sujets relatifs à : [Vb.Net] Problème téléchargement + décompression


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR