Télécharge des fichiers

Le
vbnet3
Bonjour,
Slt tt monde : comment télécharge des images a partir d’un serveur en utilisent Protocol (http )
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
Martin.boucher
Le #18054401
Avec WinHttp !

Exemple :

Private Sub Command1_Click()

Dim wnh As Object
Set wnh = CreateObject("WinHttp.WinHttpRequest.5.1")
With wnh
.Open "GET",
"http://wwwedu.ge.ch/co/colombieres/Sic/Thullen/05_06/704Aexer6/tortue%20cool.jpg",
False
.Send
Call SaveBinaryData("c:tempmonfichier.jpg", .ResponseBody)
End With

End Sub

Function SaveBinaryData(FileName, ByteArray)
Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2

'Create Stream object
Dim BinaryStream
Set BinaryStream = CreateObject("ADODB.Stream")

'Specify stream type - we want To save binary data.
BinaryStream.Type = adTypeBinary

'Open the stream And write binary data To the object
BinaryStream.Open
BinaryStream.Write ByteArray

'Save binary data To disk
BinaryStream.SaveToFile FileName, adSaveCreateOverWrite
End Function


a+
Martin

On Fri, 05 Dec 2008 07:06:18 -0600, vbnet3 wrote:

Bonjour,
Slt tt monde : comment télécharge des images a partir d’un serveur en
utilisent Protocol (http )


Driss HANIB
Le #18056231
attention Martin,
ton message est considéré comme un virus par avast.

Driss


"Martin Boucher" news:
avast! : Le corps du message a été retiré car il contient un virus.



Martin.boucher
Le #18056221
Ah, Merci Driss.
C'est peut-être quand dans mon exemple, il y a des CreateIObject, je
ne sais pas.

J'en profite donc mettre en attachement un fichier texte contenant mon
exemple. En espérant que ca va passer.

Martin



On Fri, 5 Dec 2008 17:32:39 +0100, "Driss HANIB"

attention Martin,
ton message est considéré comme un virus par avast.

Driss


"Martin Boucher" news:
avast! : Le corps du message a été retiré car il contient un virus.






Martin.boucher
Le #18056211
Ah, Merci Driss.
C'est peut-être les Create Object de l'exemple qui ont fait ça.
Enfin, c'est pas très pratique pour envoyer un exemple de code...

Bon, je vais envoyer l'exemple en maquillant certaine commande, en
espérant que celui-ci passe bien maintenant.





Martin



On Fri, 5 Dec 2008 17:32:39 +0100, "Driss HANIB"

attention Martin,
ton message est considéré comme un virus par avast.

Driss


"Martin Boucher" news:
avast! : Le corps du message a été retiré car il contient un virus.






Martin.boucher
Le #18056201
Bon, voici l'exemple en question.
Il faudra remplacer "Object Create" par la bonne instruction.


Avec WinHttp !

Exemple :

Private Sub Command1_Click()

Dim wnh As Object
Set wnh = Object Create("WinHttp.WinHttpRequest.5.1")
With wnh
.Open "GET",
"http://medias.lemonde.fr/mmpub/edt/ill/2005/09/02/v_7_wiki4.jpg",
False
.Send
Call SaveBinaryData("c:tempmonfichier.jpg", .ResponseBody)
End With

End Sub

Function SaveBinaryData(FileName, ByteArray)
Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2

'Create Stream object
Dim BinaryStream
Set BinaryStream = Object Create("ADODB.Stream")

'Specify stream type - we want To save binary data.
BinaryStream.Type = adTypeBinary

'Open the stream And write binary data To the object
BinaryStream.Open
BinaryStream.Write ByteArray

'Save binary data To disk
BinaryStream.SaveToFile FileName, adSaveCreateOverWrite
End Function




On Fri, 05 Dec 2008 16:45:55 GMT, (Martin
Boucher) wrote:

Ah, Merci Driss.
C'est peut-être les Create Object de l'exemple qui ont fait ça.
Enfin, c'est pas très pratique pour envoyer un exemple de code...

Bon, je vais envoyer l'exemple en maquillant certaine commande, en
espérant que celui-ci passe bien maintenant.





Martin



On Fri, 5 Dec 2008 17:32:39 +0100, "Driss HANIB"

attention Martin,
ton message est considéré comme un virus par avast.

Driss


"Martin Boucher" news:
avast! : Le corps du message a été retiré car il contient un virus.








Driss HANIB
Le #18056491
salut Martin

c'est du VB 6 ?
(je ne connais pas c'est tout..mais il y a plein de choses que je ne connais
pas ;o) )

Driss

"Martin Boucher" news:
Bon, voici l'exemple en question.
Il faudra remplacer "Object Create" par la bonne instruction.


Avec WinHttp !

Exemple :

Private Sub Command1_Click()

Dim wnh As Object
Set wnh = Object Create("WinHttp.WinHttpRequest.5.1")
With wnh
.Open "GET",
"http://medias.lemonde.fr/mmpub/edt/ill/2005/09/02/v_7_wiki4.jpg",
False
.Send
Call SaveBinaryData("c:tempmonfichier.jpg", .ResponseBody)
End With

End Sub

Function SaveBinaryData(FileName, ByteArray)
Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2

'Create Stream object
Dim BinaryStream
Set BinaryStream = Object Create("ADODB.Stream")

'Specify stream type - we want To save binary data.
BinaryStream.Type = adTypeBinary

'Open the stream And write binary data To the object
BinaryStream.Open
BinaryStream.Write ByteArray

'Save binary data To disk
BinaryStream.SaveToFile FileName, adSaveCreateOverWrite
End Function




On Fri, 05 Dec 2008 16:45:55 GMT, (Martin
Boucher) wrote:

Ah, Merci Driss.
C'est peut-être les Create Object de l'exemple qui ont fait ça.
Enfin, c'est pas très pratique pour envoyer un exemple de code...

Bon, je vais envoyer l'exemple en maquillant certaine commande, en
espérant que celui-ci passe bien maintenant.





Martin



On Fri, 5 Dec 2008 17:32:39 +0100, "Driss HANIB"

attention Martin,
ton message est considéré comme un virus par avast.

Driss


"Martin Boucher" news:
avast! : Le corps du message a été retiré car il contient un virus.











Martin.boucher
Le #18057101
Salut Driss, collègue de la liste VBFrancais. :-)

Ouaip, le code ci-dessous est bien du VB6 et il fonctionne
merveilleusement bien, pour l'avoir essayé sur ma machine. (XP SP2)
(ce n'est pas moi l'auteur)

En fait, toute la solution repose sur l'utilisation de winhttp.dll.
C'est une composante de windows XP depuis le SP1. (sur vista, je ne
sais pas) Si cette DLL n'est pas présente sur ton poste, tu peux la
télécharger, elle est offerte gratuitement.

Le bout utilisant ADO, c'est simplement pour enregistrer le fichier en
local. On pourrait faire autrement, mais ça fait pas mal plus propre.

a+
Martin




On Fri, 5 Dec 2008 18:15:22 +0100, "Driss HANIB"

salut Martin

c'est du VB 6 ?
(je ne connais pas c'est tout..mais il y a plein de choses que je ne connais
pas ;o) )

Driss

"Martin Boucher" news:
Bon, voici l'exemple en question.
Il faudra remplacer "Object Create" par la bonne instruction.


Avec WinHttp !

Exemple :

Private Sub Command1_Click()

Dim wnh As Object
Set wnh = Object Create("WinHttp.WinHttpRequest.5.1")
With wnh
.Open "GET",
"http://medias.lemonde.fr/mmpub/edt/ill/2005/09/02/v_7_wiki4.jpg",
False
.Send
Call SaveBinaryData("c:tempmonfichier.jpg", .ResponseBody)
End With

End Sub

Function SaveBinaryData(FileName, ByteArray)
Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2

'Create Stream object
Dim BinaryStream
Set BinaryStream = Object Create("ADODB.Stream")

'Specify stream type - we want To save binary data.
BinaryStream.Type = adTypeBinary

'Open the stream And write binary data To the object
BinaryStream.Open
BinaryStream.Write ByteArray

'Save binary data To disk
BinaryStream.SaveToFile FileName, adSaveCreateOverWrite
End Function




On Fri, 05 Dec 2008 16:45:55 GMT, (Martin
Boucher) wrote:

Ah, Merci Driss.
C'est peut-être les Create Object de l'exemple qui ont fait ça.
Enfin, c'est pas très pratique pour envoyer un exemple de code...

Bon, je vais envoyer l'exemple en maquillant certaine commande, en
espérant que celui-ci passe bien maintenant.





Martin



On Fri, 5 Dec 2008 17:32:39 +0100, "Driss HANIB"

attention Martin,
ton message est considéré comme un virus par avast.

Driss


"Martin Boucher" news:
avast! : Le corps du message a été retiré car il contient un virus.














Jean-marc
Le #18057421
vbnet3 wrote:
Bonjour,
Slt tt monde : comment télécharge des images a partir d’un serveur en
utilisent Protocol (http )



En complément de la réponse de Martin, je signale
l'existence de l'article de la FAQ:

Comment télécharger une page web en Visual Basic ?
http://faq.vb.free.fr/index.php?question9

On y présente une méthode alternative utilisant l'API :
URLDownloadToFile

Cordialement,


--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Driss HANIB
Le #18060321
OK

merci, je regarde cela

Driss

"Martin Boucher" news:
Salut Driss, collègue de la liste VBFrancais. :-)

Ouaip, le code ci-dessous est bien du VB6 et il fonctionne
merveilleusement bien, pour l'avoir essayé sur ma machine. (XP SP2)
(ce n'est pas moi l'auteur)

En fait, toute la solution repose sur l'utilisation de winhttp.dll.
C'est une composante de windows XP depuis le SP1. (sur vista, je ne
sais pas) Si cette DLL n'est pas présente sur ton poste, tu peux la
télécharger, elle est offerte gratuitement.

Le bout utilisant ADO, c'est simplement pour enregistrer le fichier en
local. On pourrait faire autrement, mais ça fait pas mal plus propre.

a+
Martin




On Fri, 5 Dec 2008 18:15:22 +0100, "Driss HANIB"

salut Martin

c'est du VB 6 ?
(je ne connais pas c'est tout..mais il y a plein de choses que je ne
connais
pas ;o) )

Driss

"Martin Boucher" news:
Bon, voici l'exemple en question.
Il faudra remplacer "Object Create" par la bonne instruction.


Avec WinHttp !

Exemple :

Private Sub Command1_Click()

Dim wnh As Object
Set wnh = Object Create("WinHttp.WinHttpRequest.5.1")
With wnh
.Open "GET",
"http://medias.lemonde.fr/mmpub/edt/ill/2005/09/02/v_7_wiki4.jpg",
False
.Send
Call SaveBinaryData("c:tempmonfichier.jpg", .ResponseBody)
End With

End Sub

Function SaveBinaryData(FileName, ByteArray)
Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2

'Create Stream object
Dim BinaryStream
Set BinaryStream = Object Create("ADODB.Stream")

'Specify stream type - we want To save binary data.
BinaryStream.Type = adTypeBinary

'Open the stream And write binary data To the object
BinaryStream.Open
BinaryStream.Write ByteArray

'Save binary data To disk
BinaryStream.SaveToFile FileName, adSaveCreateOverWrite
End Function




On Fri, 05 Dec 2008 16:45:55 GMT, (Martin
Boucher) wrote:

Ah, Merci Driss.
C'est peut-être les Create Object de l'exemple qui ont fait ça.
Enfin, c'est pas très pratique pour envoyer un exemple de code...

Bon, je vais envoyer l'exemple en maquillant certaine commande, en
espérant que celui-ci passe bien maintenant.





Martin



On Fri, 5 Dec 2008 17:32:39 +0100, "Driss HANIB"

attention Martin,
ton message est considéré comme un virus par avast.

Driss


"Martin Boucher" news:
avast! : Le corps du message a été retiré car il contient un virus.

















Publicité
Poster une réponse
Anonyme