[VB .Net 2008 Express] Téléchargement à partir d'1 WebBrowser

Le
Bonjour,

J'ai 1 petite série de questions, s'il est possible de m'éclairer.
J'ai bien vu qu'on parlait de l'objet Response, mais je ne le trouve pas.

Comment lancer le téléchargement d'1 fichier à partir d'1 WebBrowser ?
Comment dire d'enregistrer le fichier dans 1 répertoire donné ?
Comment savoir que l'enregistrement s'est terminé ?
Et comment savoir si possible si l'enregistrement s'est fait avec succès ou
non ?

Merci d'avance pour votre aide,
Stéphane.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Gillard
Le #18364821
Public Class Form1
Private Declare Function DoFileDownload Lib "shdocvw.dll" (ByVal
lpszFile() As Int16) As Integer
Public Sub DisplayDownloadBox(ByVal sPath As String)
Dim abUnicode(sPath.Length) As Int16
For i As Integer = 0 To sPath.Length - 1
abUnicode(i) =
Microsoft.VisualBasic.Strings.AscW(sPath.Substring(i, 1))
Next i
Call DoFileDownload(abUnicode)
Erase abUnicode
End Sub

' passer par ASCW est apparemment la seule manière pour traiter
l'unicode.
' différents tests effectués avec System.Text.Encoding (ascii, unicode,
utf-16, utf-32, etc...)
' affiche alors une alerte : "Les paramètres de sécurité actuels ne
vous permettent pas de télécharger ce fichier."


Sub Main()
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
DisplayDownloadBox("http://bldsoftware.com/pgrm/LeConjugueur.zip")

End Sub
End Class


<Stéphane> a écrit dans le message de groupe de discussion :

Bonjour,

J'ai 1 petite série de questions, s'il est possible de m'éclairer.
J'ai bien vu qu'on parlait de l'objet Response, mais je ne le trouve pas.

Comment lancer le téléchargement d'1 fichier à partir d'1 WebBrowser ?
Comment dire d'enregistrer le fichier dans 1 répertoire donné ?
Comment savoir que l'enregistrement s'est terminé ?
Et comment savoir si possible si l'enregistrement s'est fait avec succès
ou non ?

Merci d'avance pour votre aide,
Stéphane.




Le #18365351
Merci Georges,

Le téléchargement se lance.

Par contre, j'ai la boîte Enregistrer sous qui apparait toujours.

Et je ne sais pas quand le téléchargement est fini.

Est-ce que tu as 1 solution ?

Je ne trouve que des éléments VB6, et je n'arrive pas à l'adapter en .Net.

Stéphane


"Gillard" news:
Public Class Form1
Private Declare Function DoFileDownload Lib "shdocvw.dll" (ByVal
lpszFile() As Int16) As Integer
Public Sub DisplayDownloadBox(ByVal sPath As String)
Dim abUnicode(sPath.Length) As Int16
For i As Integer = 0 To sPath.Length - 1
abUnicode(i) =
Microsoft.VisualBasic.Strings.AscW(sPath.Substring(i, 1))
Next i
Call DoFileDownload(abUnicode)
Erase abUnicode
End Sub

' passer par ASCW est apparemment la seule manière pour traiter
l'unicode.
' différents tests effectués avec System.Text.Encoding (ascii,
unicode, utf-16, utf-32, etc...)
' affiche alors une alerte : "Les paramètres de sécurité actuels ne
vous permettent pas de télécharger ce fichier."


Sub Main()
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
DisplayDownloadBox("http://bldsoftware.com/pgrm/LeConjugueur.zip")

End Sub
End Class


<Stéphane> a écrit dans le message de groupe de discussion :

Bonjour,

J'ai 1 petite série de questions, s'il est possible de m'éclairer.
J'ai bien vu qu'on parlait de l'objet Response, mais je ne le trouve pas.

Comment lancer le téléchargement d'1 fichier à partir d'1 WebBrowser ?
Comment dire d'enregistrer le fichier dans 1 répertoire donné ?
Comment savoir que l'enregistrement s'est terminé ?
Et comment savoir si possible si l'enregistrement s'est fait avec succès
ou non ?

Merci d'avance pour votre aide,
Stéphane.






Gillard
Le #18365611
ben non je ne sais pas mais sinon

tu peux utiliser

my.computer.network.download .... ( quelque chose comme ça )


:p

<Stéphane> a écrit dans le message de groupe de discussion :
#$
Merci Georges,

Le téléchargement se lance.

Par contre, j'ai la boîte Enregistrer sous qui apparait toujours.

Et je ne sais pas quand le téléchargement est fini.

Est-ce que tu as 1 solution ?

Je ne trouve que des éléments VB6, et je n'arrive pas à l'adapter en .Net.

Stéphane


"Gillard" news:
Public Class Form1
Private Declare Function DoFileDownload Lib "shdocvw.dll" (ByVal
lpszFile() As Int16) As Integer
Public Sub DisplayDownloadBox(ByVal sPath As String)
Dim abUnicode(sPath.Length) As Int16
For i As Integer = 0 To sPath.Length - 1
abUnicode(i) =
Microsoft.VisualBasic.Strings.AscW(sPath.Substring(i, 1))
Next i
Call DoFileDownload(abUnicode)
Erase abUnicode
End Sub

' passer par ASCW est apparemment la seule manière pour traiter
l'unicode.
' différents tests effectués avec System.Text.Encoding (ascii,
unicode, utf-16, utf-32, etc...)
' affiche alors une alerte : "Les paramètres de sécurité actuels ne
vous permettent pas de télécharger ce fichier."


Sub Main()
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
DisplayDownloadBox("http://bldsoftware.com/pgrm/LeConjugueur.zip")

End Sub
End Class


<Stéphane> a écrit dans le message de groupe de discussion :

Bonjour,

J'ai 1 petite série de questions, s'il est possible de m'éclairer.
J'ai bien vu qu'on parlait de l'objet Response, mais je ne le trouve
pas.

Comment lancer le téléchargement d'1 fichier à partir d'1 WebBrowser ?
Comment dire d'enregistrer le fichier dans 1 répertoire donné ?
Comment savoir que l'enregistrement s'est terminé ?
Et comment savoir si possible si l'enregistrement s'est fait avec succès
ou non ?

Merci d'avance pour votre aide,
Stéphane.










Le #18385401
Merci, je vais regarder de ce côté.


"Gillard" news: uDi%
ben non je ne sais pas mais sinon

tu peux utiliser

my.computer.network.download .... ( quelque chose comme ça )


:p

<Stéphane> a écrit dans le message de groupe de discussion :
#$
Merci Georges,

Le téléchargement se lance.

Par contre, j'ai la boîte Enregistrer sous qui apparait toujours.

Et je ne sais pas quand le téléchargement est fini.

Est-ce que tu as 1 solution ?

Je ne trouve que des éléments VB6, et je n'arrive pas à l'adapter en
.Net.

Stéphane


"Gillard" de news:
Public Class Form1
Private Declare Function DoFileDownload Lib "shdocvw.dll" (ByVal
lpszFile() As Int16) As Integer
Public Sub DisplayDownloadBox(ByVal sPath As String)
Dim abUnicode(sPath.Length) As Int16
For i As Integer = 0 To sPath.Length - 1
abUnicode(i) =
Microsoft.VisualBasic.Strings.AscW(sPath.Substring(i, 1))
Next i
Call DoFileDownload(abUnicode)
Erase abUnicode
End Sub

' passer par ASCW est apparemment la seule manière pour traiter
l'unicode.
' différents tests effectués avec System.Text.Encoding (ascii,
unicode, utf-16, utf-32, etc...)
' affiche alors une alerte : "Les paramètres de sécurité actuels ne
vous permettent pas de télécharger ce fichier."


Sub Main()
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load

DisplayDownloadBox("http://bldsoftware.com/pgrm/LeConjugueur.zip")

End Sub
End Class


<Stéphane> a écrit dans le message de groupe de discussion :

Bonjour,

J'ai 1 petite série de questions, s'il est possible de m'éclairer.
J'ai bien vu qu'on parlait de l'objet Response, mais je ne le trouve
pas.

Comment lancer le téléchargement d'1 fichier à partir d'1 WebBrowser ?
Comment dire d'enregistrer le fichier dans 1 répertoire donné ?
Comment savoir que l'enregistrement s'est terminé ?
Et comment savoir si possible si l'enregistrement s'est fait avec
succès ou non ?

Merci d'avance pour votre aide,
Stéphane.












Le #18431951
Avec du retard, Merci Georges !

C'est exactement tout ce que je recherchais ! Et le tout, en 1 seule ligne
de commande :
Téléchargement du fichier sur internet,
Enregistrement sous un nom prédéfini,
Et pour finir, le code ne passe pas à l'instruction suivante tant que le
téléchargement est toujours en cours.

Bref, magnifique !

Stéphane

PS : J'en profite pour coller mon bout de code, pour que ca puisse servir à
qui en veut (remplacer les commentaires par du code selon les besoins) :

Dim startup_path As String

Sub init()

startup_path = Application.StartupPath

If Not startup_path.EndsWith("") Then startup_path &= ""

End Sub

Sub télécharge(ByVal url As String)

Dim fichier As String = url.Substring(url.LastIndexOf("/") + 1)
Dim fichier_complet As String = startup_path & fichier
Dim CancelDownLoad As Boolean = False

If IO.File.Exists(fichier_complet) Then

Try
IO.File.Delete(fichier_complet)

Catch ex As Exception
'Droits insuffisants en écriture

End Try

End If

Try
My.Computer.Network.DownloadFile(url, fichier_complet, "", "",
True, 100000, True)

Catch ex As Exception

Select Case ex.Message

Case "L'opération a été annulée."
'L'opération a été annulée

Case Else
'Droits insuffisants en écriture ou disque plein ou...

End Select

CancelDownLoad = True

End Try

If Not CancelDownLoad Then

If IO.File.Exists(fichier_complet) Then
'Le téléchargement a réussi

Else
'Le téléchargement a échoué

End If

Else
'Le téléchargement a été annulé ou droits insuffisants en
écriture ou disque plein ou...

End If

End Sub


"Gillard" news: uDi%
ben non je ne sais pas mais sinon

tu peux utiliser

my.computer.network.download .... ( quelque chose comme ça )


:p

<Stéphane> a écrit dans le message de groupe de discussion :
#$
Merci Georges,

Le téléchargement se lance.

Par contre, j'ai la boîte Enregistrer sous qui apparait toujours.

Et je ne sais pas quand le téléchargement est fini.

Est-ce que tu as 1 solution ?

Je ne trouve que des éléments VB6, et je n'arrive pas à l'adapter en
.Net.

Stéphane


"Gillard" de news:
Public Class Form1
Private Declare Function DoFileDownload Lib "shdocvw.dll" (ByVal
lpszFile() As Int16) As Integer
Public Sub DisplayDownloadBox(ByVal sPath As String)
Dim abUnicode(sPath.Length) As Int16
For i As Integer = 0 To sPath.Length - 1
abUnicode(i) =
Microsoft.VisualBasic.Strings.AscW(sPath.Substring(i, 1))
Next i
Call DoFileDownload(abUnicode)
Erase abUnicode
End Sub

' passer par ASCW est apparemment la seule manière pour traiter
l'unicode.
' différents tests effectués avec System.Text.Encoding (ascii,
unicode, utf-16, utf-32, etc...)
' affiche alors une alerte : "Les paramètres de sécurité actuels ne
vous permettent pas de télécharger ce fichier."


Sub Main()
End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load

DisplayDownloadBox("http://bldsoftware.com/pgrm/LeConjugueur.zip")

End Sub
End Class


<Stéphane> a écrit dans le message de groupe de discussion :

Bonjour,

J'ai 1 petite série de questions, s'il est possible de m'éclairer.
J'ai bien vu qu'on parlait de l'objet Response, mais je ne le trouve
pas.

Comment lancer le téléchargement d'1 fichier à partir d'1 WebBrowser ?
Comment dire d'enregistrer le fichier dans 1 répertoire donné ?
Comment savoir que l'enregistrement s'est terminé ?
Et comment savoir si possible si l'enregistrement s'est fait avec
succès ou non ?

Merci d'avance pour votre aide,
Stéphane.












Publicité
Poster une réponse
Anonyme